【发布时间】:2019-11-25 20:27:21
【问题描述】:
我正在尝试将 8.5"x11" pdf 裁剪为 4.25"x6" 的明信片大小,然后将裁剪后的 pdf 上传到在线印刷公司。
我能够使用 PyPDF2 裁剪 pdf。当我打开裁剪的 pdf 时,它看起来像正确的大小,并且在页面属性中页面大小具有正确的尺寸。但是,当我尝试将裁剪后的 pdf 上传到打印机时,出现页面大小为 8.5"x11" 的错误。
我在 Word 中创建了具有正确页面尺寸的测试文档,然后将其导出为 pdf,并且能够正确上传到打印机门户网站。
裁剪后的文档中保留的原始页面大小是什么?如何更改以匹配裁剪区域?
我的代码如下:
import PyPDF2
from PyPDF2 import PdfFileReader, PdfFileWriter
# Create a pdf object
pdfFileObj = open('document.pdf', 'rb')
# read the pdf object
pdfReader = PyPDF2.PdfFileReader(pdfFileObj)
# create pdf writer object
writerObj = PdfFileWriter()
page = pdfReader.getPage(1)
page.cropBox.setLowerLeft((0, 0))
page.cropBox.setLowerRight((306, 0))
page.cropBox.setUpperLeft((0, 432))
page.cropBox.setUpperRight((306, 432))
# Write the new page
writerObj.addPage(page)
# Create an output pdf
outstream = open('postcardsCropped.pdf', 'wb')
writerObj.write(outstream)
outstream.close()
【问题讨论】:
-
您的打印机可能会忽略裁剪框而只看到媒体框。您应该尝试并操纵两者。
-
@mkl 你的建议奏效了。谢谢
-
我应该把它作为一个实际的答案让你接受吗?还是你想自己回答?