From f6389cceb8f63b677eec5823a86c39ce31176aa6 Mon Sep 17 00:00:00 2001 From: 18516761980 <4761516tqsxp> Date: 星期六, 26 三月 2022 17:04:06 +0800 Subject: [PATCH] # --- src/main/java/com/slcf/controller/MatCodeController.java | 88 +++++++++++++++++++++++++++----------------- 1 files changed, 54 insertions(+), 34 deletions(-) diff --git a/src/main/java/com/slcf/controller/MatCodeController.java b/src/main/java/com/slcf/controller/MatCodeController.java index 3170576..8d4e71b 100644 --- a/src/main/java/com/slcf/controller/MatCodeController.java +++ b/src/main/java/com/slcf/controller/MatCodeController.java @@ -11,10 +11,12 @@ import java.util.StringTokenizer; import javax.annotation.Resource; +import javax.imageio.ImageIO; import javax.servlet.ServletOutputStream; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import com.slcf.util.BarcodeUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @@ -431,42 +433,60 @@ * 鐢熸垚涓�缁寸爜 * @param response */ +// @RequestMapping("/showCode1.action") +// public void showCode1(HttpServletResponse response,HttpServletRequest request){ +// try { +// response.setContentType("image/jpeg"); +// javax.servlet.ServletOutputStream servletoutputstream = response.getOutputStream(); +// response.setHeader("Pragma", "no-cache"); +// response.setHeader("Cache-Control", "no-cache"); +// response.setDateHeader("Expires", 0L); +// try +// { +// BarCode barcode1 = getChart(request); +// barcode1.setSize(barcode1.width, barcode1.height); +// if(barcode1.autoSize) +// { +// BufferedImage bufferedimage = new BufferedImage(barcode1.getSize().width, barcode1.getSize().height, 13); +// java.awt.Graphics2D graphics2d = bufferedimage.createGraphics(); +// barcode1.paint(graphics2d); +// barcode1.invalidate(); +// graphics2d.dispose(); +// } +// BufferedImage bufferedimage1 = new BufferedImage(barcode1.getSize().width, barcode1.getSize().height, 1); +//// BufferedImage bufferedimage1 = new BufferedImage(barcode1.width, barcode1.height, 1); +// java.awt.Graphics2D graphics2d1 = bufferedimage1.createGraphics(); +// barcode1.paint(graphics2d1); +// JPEGImageEncoder jpegimageencoder = JPEGCodec.createJPEGEncoder(servletoutputstream); +// JPEGEncodeParam jpegencodeparam = jpegimageencoder.getDefaultJPEGEncodeParam(bufferedimage1); +// jpegencodeparam.setQuality(1.0F, true); +// jpegimageencoder.setJPEGEncodeParam(jpegencodeparam); +// jpegimageencoder.encode(bufferedimage1, jpegencodeparam); +// }catch(Exception exception) +// { +// exception.printStackTrace(); +// } +// }catch (Exception e) { +// System.out.println(e.getMessage()); +// } +// } + + /** + * 鐢熸垚涓�缁寸爜 + * @param response + */ @RequestMapping("/showCode1.action") - public void showCode1(HttpServletResponse response,HttpServletRequest request){ - try { - response.setContentType("image/jpeg"); - javax.servlet.ServletOutputStream servletoutputstream = response.getOutputStream(); - response.setHeader("Pragma", "no-cache"); - response.setHeader("Cache-Control", "no-cache"); - response.setDateHeader("Expires", 0L); - try - { - BarCode barcode1 = getChart(request); - barcode1.setSize(barcode1.width, barcode1.height); - if(barcode1.autoSize) - { - BufferedImage bufferedimage = new BufferedImage(barcode1.getSize().width, barcode1.getSize().height, 13); - java.awt.Graphics2D graphics2d = bufferedimage.createGraphics(); - barcode1.paint(graphics2d); - barcode1.invalidate(); - graphics2d.dispose(); - } - BufferedImage bufferedimage1 = new BufferedImage(barcode1.getSize().width, barcode1.getSize().height, 1); -// BufferedImage bufferedimage1 = new BufferedImage(barcode1.width, barcode1.height, 1); - java.awt.Graphics2D graphics2d1 = bufferedimage1.createGraphics(); - barcode1.paint(graphics2d1); - JPEGImageEncoder jpegimageencoder = JPEGCodec.createJPEGEncoder(servletoutputstream); - JPEGEncodeParam jpegencodeparam = jpegimageencoder.getDefaultJPEGEncodeParam(bufferedimage1); - jpegencodeparam.setQuality(1.0F, true); - jpegimageencoder.setJPEGEncodeParam(jpegencodeparam); - jpegimageencoder.encode(bufferedimage1, jpegencodeparam); - }catch(Exception exception) - { - exception.printStackTrace(); - } - }catch (Exception e) { - System.out.println(e.getMessage()); + public void showCode1(HttpServletResponse response,HttpServletRequest request) throws IOException { + String matCode = request.getParameter("matCode"); + Integer width = Integer.parseInt(request.getParameter("width")); + Integer height = Integer.parseInt(request.getParameter("height")); + BufferedImage img = BarcodeUtils.encode(matCode, width, height); +// BufferedImage img = BarcodeUtils.encode(matCode); + if (!ImageIO.write(img, "jpg", response.getOutputStream())) { + throw new IOException("Could not write an image of format jpg"); } + response.getOutputStream().flush(); + response.getOutputStream().close(); } // public BarCode barcode; -- Gitblit v1.9.1