我有一个横向PDF(792x612),其页面的xObject包含一个612x792的边界框。使用itext7复制页面时,页面顶部将被剪裁。
示例代码:
PdfFormXObject pageCopy = readerDocument.getPage(i).copyAsFormXObject(pDFDocument);
canvas.addXObject(pageCopy, 0, 0);
如果我获得pageCopy的Bounding框,则将其设置为页面的媒体框。例如:
Rectangle bbSize = pageCopy.getBBox().toRectangle();
矩形的大小是792x612,而不是预期值612x792。
在PDF中,“边界”框明确设置为612x792:
</Filter /FlateDecode/Length 842/Type /XObject/Subtype /Form/FormType 1/Matrix [1 0 0 1 0 0]/BBox [0 0 612 792]/Resources <</ExtGState <</Xi11 102 0 R>>/Font <</Xi10 103 0 R>>>>>>
如果使用PdfPage copyTo方法复制页面,则不会发生剪切。但这意味着如果需要,页面无法调整大小。