当前位置:编程学习 > JAVA >>

JSP页面使用Graphics生成带中文的图片出现乱码,求高人帮忙解决

JSP代码如下:
<%@page pageEncoding="GB2312" contentType="text/html; charset=GB2312"%>
<%@page import="java.awt.image.BufferedImage"%>
<%@page import="java.awt.*"%>
<%@page import="javax.imageio.ImageIO"%>
<%@page import="java.io.IOException"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<%

try {
//设置页面不缓存
response.setHeader("Pragma","No-cache");
response.setHeader("Cache-Control","no-cache");
response.setDateHeader("Expires", 0);
//在内存中创建图象
int imageWidth = 450;//图片的宽度
        int imageHeight = 80;//图片的高度
    
    
BufferedImage image = new BufferedImage(imageWidth, imageHeight, BufferedImage.TYPE_INT_RGB);
//获取图形上下文
Graphics graphics = image.getGraphics();
String insertFont1 = "JSP页面使用Graphics生成带中文的图片出现乱码,求高人帮忙解决";

graphics.setColor(Color.PINK);
        graphics.fillRect(0, 0, imageWidth, imageHeight);
        graphics.setColor(Color.BLACK);
        graphics.setFont((new Font("宋体",Font.PLAIN,12)));
    
graphics.drawString(insertFont1, 5, 15);
    
    
    //图像生效
    graphics.dispose();

    response.reset();
ServletOutputStream o = response.getOutputStream();
// 输出图象到页面
ImageIO.write(image, "JPEG",o);
o.flush();
o.close();
o = null ;
response.flushBuffer();
out.clear();
out = pageContext.pushBody();

} catch (IOException e) {
e.printStackTrace();
}
%>


测试打开该页面显示出来的图片上的中文全是乱码?字母能正常显示,求解决方案,万分感谢 --------------------编程问答-------------------- 我复制你的这段代码执行没有问题,不是乱码。
右键属性看下你的JSP的text file encoding.
还有你的tomcat  server.xml的encoding看看是不是对应的你的编码。 --------------------编程问答--------------------
引用 1 楼 xiesisi3 的回复:
我复制你的这段代码执行没有问题,不是乱码。
右键属性看下你的JSP的text file encoding.
还有你的tomcat  server.xml的encoding看看是不是对应的你的编码。


JSP的encoding 自动选择、UTF-8、GB2312都试过了,不行
我用的是weblogic的服务器,项目的web.xml里面对编码的设置
<context-param>
    <param-name>weblogic.httpd.inputCharset./*</param-name>
    <param-value>gb2312</param-value>
  </context-param>
都对应上的
补充:Java ,  Eclipse
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,