快速业务通道

Servlet实现动态图文结合输出 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-15
:    要嵌的文字 * imageFile:  JPG图片的虚拟路径 * x:      文字输出的起始X坐标位置 * y:      文字输出的起始Y坐标位置 * fontColor:  字体颜色(例fontColor=FFFFFF) * fontSize:  字体大小 * fontStyle:  字体风格(斜体,粗体等) * fontName:  字体名称(如仿宋体,宋体等) */ public class TextIntoImage extends HttpServlet {    private static final String CONTENT_TYPE = "image/jpeg;charset=GB2312";    public void init() throws ServletException {    }    /** Process the HTTP Get request */    public void doGet(HttpServletRequest request, HttpServletResponse response)      throws ServletException, IOException {      doPost(request,response);    }    //---------------------------------------------------------------------------------- -----------    /** Process the HTTP Post request */    public void doPost(HttpServletRequest request, HttpServletResponse response)      throws ServletException, IOException {      response.setContentType(CONTENT_TYPE);      String text = "";        //要嵌的文字      String imageFile = "";     //被嵌的图片的虚拟路径      int x = 0;           //坐标      int y = 0;      String fontColor = "";     //字体颜色      int fontSize = 0;        //字体大小      String fontStyle = "";     //字体风格(斜体,粗体等)      String fontName = "";      //字体名称      try {        //取得参数(ParamUtil类请参看后面附的ParamUtil类代码)        text = ParamUtil.getParameter(request,"text");        imageFile = ParamUtil.getParameter(request,"imageFile");        x = ParamUtil.getIntParameter(request,"x",0);        y = ParamUtil.getIntParameter(request,"y",0);        fontColor = ParamUtil.getParameter(request,"fontColor");        fontSize = ParamUtil.getIntParameter(request,"fontSize",16);        fontStyle = ParamUtil.getParameter(request,"fontStyle");        fontName = ParamUtil.getParameter(request,"fontName");      }      catch(Exception e) {        e.printStackTrace();      }      ServletOutputStream output=response.getOutputStream();      if(imageFile.toLowerCase().endsWith(".jpeg")||imageFile.toLowerCase().endsWith (".jpg")) {        imageFile = getServletContext().getRealPath(imageFile);        InputStream imageIn = new FileInputStream(new File(imageFile));        JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder(imageIn);        BufferedImage image = decoder.decodeAsBufferedImage();        Graphics g=image.getGraphics();        //设置颜色        g.setColor(new Color(Integer.parseInt(fontColor,16)));        //设置字体        Font mFont = new Font(fontName,Font.PLAIN,fontSize);//默认字体        if(fontStyle.equalsIgnoreCase("

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号