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

java 图片打印

使用printable实现打印功能。碰到了一个很奇怪的问题,在print()方法中使用Graphics2D的drawImage(Image img, int x, int y, ImageObserver observer) 
方法打印一张图片,可是打印出来的效果总是没有原图片清晰,要大一些。但是调用的drawImage确实是使用的跟图片一样的大小。不知道大家有没有碰到过这种问题。有什么好的解决办法没有。谢谢 java 图片 不清晰 打印 --------------------编程问答-------------------- 我猜是不是jpg的转成了bmp的原因呢。。
bmp的是
我这有一个图片压缩的程序,借鉴网上的方法改造的,愿意的话很乐意和你分享一下 --------------------编程问答--------------------
引用 1 楼 AA5279AA 的回复:
我猜是不是jpg的转成了bmp的原因呢。。
bmp的是
我这有一个图片压缩的程序,借鉴网上的方法改造的,愿意的话很乐意和你分享一下


非常谢谢。我现在的具体情况是这样的,我生成了一个条码是一个BufferedImage,然后我将这个是用Graphics2D的drawImage(Image img, int x, int y, ImageObserver observer) 绘制到printable上,然后打印。发现打印出来的不清楚。但是直接存成图片还是很清楚 --------------------编程问答-------------------- AA5279AA:
你是说绘制的时候图片的格式发生了改变吗? --------------------编程问答--------------------

//原子性,输入Image,尺寸大小,返回BufferedImage流
//输入想得到的尺寸,原图片的地址,名称,新图片的地址,名称,原图片是否删除
public BufferedImage getSuitImgOut(Image img,int sizeweight,int sizeheight){
int newWidth = sizeweight;
int newHeight = sizeheight;
BufferedImage tag = new BufferedImage(newWidth,newHeight, BufferedImage.TYPE_INT_RGB);
tag.getGraphics().drawImage(img.getScaledInstance(newWidth, newHeight,Image.SCALE_SMOOTH), 0, 0, null);
return tag;
}

运行这段代码之后通常会比原来的图空间要小,但是不影响图片质量。
另外你的目的只是把图片展示到table么?
那样的话应该可以不用Graphics2D吧。
我不知道是不是你其他方法出了问题,我在如上方法使用Graphics2D时没有发现图片质量有下降,感觉会不会table的原因?
--------------------编程问答-------------------- 奇怪 我也遇到同样的问题,需要图片(BufferedImage)大一些,甚至大很多 drawImage 才能比较清晰了打印。如果用相同大小的打印 会出现模糊,一定是哪里没设置。不知道楼主解决了没有,可以分享下么? --------------------编程问答-------------------- 问题的产生也是一样 生成打印图片做预览感觉图片很清晰,但是drawImage打印的时候 出现了问题。我曾经考虑过 是不是打印的距离单位和代码距离单位不一致 造成可能是打印拉伸的这种情况
补充:Java ,  Java SE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,