你是用javascript还是用applet?用applet的话我知道:获得image的graphics,然后用drawstring之类的函数不就结了?

解决方案 »

  1.   

    用Image的graphics应该是画不出来的,应该获取Image所在容器的graphics,然后用drawstring之类的。
      

  2.   

    同意relive(六道轮回,无想转生) 的说法,我以前做过,我给你找个例子
      

  3.   

    import com.sun.image.codec.jpeg.JPEGCodec;
    import com.sun.image.codec.jpeg.JPEGImageEncoder;
    import java.awt.*;
    import java.awt.image.BufferedImage;
    import java.io.IOException;
    import java.io.OutputStream;
    import javax.servlet.ServletException;
    import javax.servlet.ServletResponse;
    import javax.servlet.http.*;public class TextIntoImage extends HttpServlet
    {    private static final String CONTENT_TYPE = "image/jpeg;charset=GBK";    public TextIntoImage()
        {
        }    public void doGet(HttpServletRequest httpservletrequest, HttpServletResponse httpservletresponse)
            throws ServletException, IOException
        {
            doPost(httpservletrequest, httpservletresponse);
        }    public void doPost(HttpServletRequest httpservletrequest, HttpServletResponse httpservletresponse)
            throws ServletException, IOException
        {
            httpservletresponse.setContentType("image/jpeg;charset=GBK");
            javax.servlet.ServletOutputStream servletoutputstream = httpservletresponse.getOutputStream();
            BufferedImage bufferedimage = new BufferedImage(300, 400, 1);
            Graphics g = bufferedimage.getGraphics();
            g.setColor(Color.white);
            g.fillRect(0, 0, 300, 400);
            g.setColor(Color.decode("#ff0000"));
            g.fillOval(0, 0, 299, 399);
            g.setColor(Color.BLUE);
            Font font = new Font("\u5B8B\u4F53", 1, 18);
            g.setFont(font);
            String s = "\u9500\u552E\u652F\u6301\u7CFB\u7EDF";
            g.drawString(s, 80, 100);
            JPEGImageEncoder jpegimageencoder = JPEGCodec.createJPEGEncoder(servletoutputstream);
            jpegimageencoder.encode(bufferedimage);
            servletoutputstream.close();
        }    public void init()
            throws ServletException
        {
        }
    }
    页面调用
    <html>
    <head>
    <title>Image</title>
    <link REL=stylesheet HREF="/css/Main.css" TYPE="text/css">
    </head>
    <body >
    <img src='/servlet/TextIntoImage'>
    </body>
    </html>
      

  4.   

    fandiy(继文):
    看了你的代码,从名字来看已经不是我要求的东西了
    我是想要原来一个图片,在上面加几个字,而不是写几个字变成一个图片
    不过还是谢谢你们的关注,我会继续加分
      

  5.   

    看看俺的文档
    在java的GUI上放置图片,并在图片上输出半透明文字
    http://www.csdn.net/develop/Read_Article.asp?Id=16488
    道理一样,重要把载体换成Image就可以了
      

  6.   

    效果如下:
    http://caoying.inows.com/bbs/xiruo/xxx.jpg
      

  7.   

    beyond_xiruo():你的方法我也测试了,结果不对,
    我知道applet上面的确可以做到,因为有applet的环境支持
    可以调用许多awt的方法,而看到的效果虽然出来了,但是他们还不是一个图片,而是两个drawImage得到的
      

  8.   

    我笨 不过用photoshop改一下不就可以了么 干吗这么费事!?
      

  9.   

    两个drawImage有何不可,难道你不用awt???你想用什么来着