我有一个大图像,我想在我的PDF文档中打印它,我写的是:
InputStream in = new FileInputStream(new File("C:/mylargeimage.jpg"));
PDJpeg img = new PDJpeg(doc, in);
img.setHeight(100);
img.setWidth(100);
contentStream.drawImage(img,50,pageYaxis);
我正在打印图像,但图像变得模糊,并没有获得完整的图像。我需要将图像调整为100X100。我怎么能克服这个?请帮帮我们?我已经进行了很多评论,但没有什么是明确的。
答案 0 :(得分:3)
你试过这样做吗?
InputStream in = new FileInputStream(new File("C:/mylargeimage.jpg"));
PDJpeg img = new PDJpeg(doc, in);
contentStream.drawXObject(img, 50, pageYaxis, 100, 100);
drawImage
的Javadoc表示它将以图像的默认大小绘制。 drawXObject
的Javadoc说:
在x,y坐标和某个坐标处绘制xobject(窗体或图像) 宽度和高度。
我认为,对图像本身调用setWidth
和setHeight
只会改变PDFBox认为是图像的实际尺寸 - 因此它只需要100x100像素的图像作为源