当我改变宽度时,画布上的高度也会改变。
ImageData data = ImageDataFactory.create("C:\\800px-Cubicpoly.png");
当我指定时:
data.setWidth(100);
data.setHeight(180*2.834646f);
当我指定时:
data.setWidth(600);
data.setHeight(180*2.834646f);
我没有碰到高度,为什么会改变?
doc.add(new Image(data).setPadding(0).setMargins(0,0,0,0));
答案 0 :(得分:0)
您尚未附加整个代码,但我想您使用的是默认页面大小(A4)。考虑到A4页面的宽度为595 pt(考虑到边距,它甚至会更少),并且将图像宽度设置为600 pt,我假设在处理代码时会收到以下日志消息:{{1} }
此区域不足是您以意外方式处理图像的原因。为了确保您的身份,请将文档的尺寸更改为较大的尺寸(例如A3),并确保一切均按预期进行。
那么当无法在设置区域上处理图像时,iText通常会做什么? iText 自动缩放,尝试占据尽可能多的位置,但要保留图像的比例。您说图像的高度在变化:但是宽度也一样。