response.setContentType("image/jpeg");
response.setHeader("Pragma", "No-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0);
AbstractSeal.setMm(pxPerInch / 25.4);
int height = (int) (frameHeight * AbstractSeal.mm + left * 2);
int width = (int) (frameWidth * AbstractSeal.mm + top * 2);
Seal seal = generateSeal(); BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
Graphics2D g2 = image.createGraphics();
g2.fillRect(0, 0, image.getWidth(), image.getHeight());
if(carvingType==1){ DefaultSealFrame frame = new DefaultSealFrame(left, top, frameWidth * AbstractSeal.mm, frameHeight
* AbstractSeal.mm, frameLineWidth * AbstractSeal.mm, frameType);
SealChipNest chipNest=new SealChipNest(14*AbstractSeal.mm, frame);
chipNest.draw(g2);
}
else if (isPrintable()) {
seal.setPrintable(true);
seal.draw(g2);
// 镜像
final AffineTransform hFlip = new AffineTransform(-1.0, 0, 0, 1.0, width, 0);
g2.drawImage(image, hFlip, null);
} else {
seal.draw(g2);
}
// AbstractSeal abstractSeal=(AbstractSeal) seal;
// abstractSeal.saveDraw();
g2.dispose();
ImageIO.write(image, "jpeg", response.getOutputStream());
response.getOutputStream().flush();
一次性显示很多图片的时候 在BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);这行报内存溢出 请大家帮我看看.....
response.setHeader("Pragma", "No-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0);
AbstractSeal.setMm(pxPerInch / 25.4);
int height = (int) (frameHeight * AbstractSeal.mm + left * 2);
int width = (int) (frameWidth * AbstractSeal.mm + top * 2);
Seal seal = generateSeal(); BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
Graphics2D g2 = image.createGraphics();
g2.fillRect(0, 0, image.getWidth(), image.getHeight());
if(carvingType==1){ DefaultSealFrame frame = new DefaultSealFrame(left, top, frameWidth * AbstractSeal.mm, frameHeight
* AbstractSeal.mm, frameLineWidth * AbstractSeal.mm, frameType);
SealChipNest chipNest=new SealChipNest(14*AbstractSeal.mm, frame);
chipNest.draw(g2);
}
else if (isPrintable()) {
seal.setPrintable(true);
seal.draw(g2);
// 镜像
final AffineTransform hFlip = new AffineTransform(-1.0, 0, 0, 1.0, width, 0);
g2.drawImage(image, hFlip, null);
} else {
seal.draw(g2);
}
// AbstractSeal abstractSeal=(AbstractSeal) seal;
// abstractSeal.saveDraw();
g2.dispose();
ImageIO.write(image, "jpeg", response.getOutputStream());
response.getOutputStream().flush();
一次性显示很多图片的时候 在BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);这行报内存溢出 请大家帮我看看.....
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货