使用 PDPageContentStream.drawLine 时出现 pdfbox 错误
我正在使用 PDFBox 从用户输入的表单之一生成 pdf。为了绘制一条线,我使用 PDPageContentStream.drawLine 并使用 PDPageContentStream.drawString 绘制文本。文本工作完美,但在使用 drawLine 时,当我尝试打印 pdf 时,出现错误,如附图所示。我的代码看起来像这样
PDPage page = new PDPage();
release.addPage(page);
contentStream = new PDPageContentStream(release,page);
int margin = 40;
vertHeight -= thisFontHeight * fontSize * 1.05f + 5;
contentStream.drawLine(margin,vertHeight + margin - 5, page.getMediaBox().getWidth() - margin, vertHeight + margin - 5)
任何帮助表示赞赏
I am using PDFBox for generating a pdf from one of my user inputted forms. For drawing a line I am using PDPageContentStream.drawLine and for text PDPageContentStream.drawString. The text works perfect but while using drawLine, when I try to print the pdf, I get the error as shown in the attached Image. My code looks like this
PDPage page = new PDPage();
release.addPage(page);
contentStream = new PDPageContentStream(release,page);
int margin = 40;
vertHeight -= thisFontHeight * fontSize * 1.05f + 5;
contentStream.drawLine(margin,vertHeight + margin - 5, page.getMediaBox().getWidth() - margin, vertHeight + margin - 5)
Any help appreciated
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您的代码示例没有显示它,但我怀疑您正在混合线条和文本。不得在 BT 和 ET 之间画线。
例如,如果您在 1 和 3 之间绘制一条线,您将收到上述错误(或类似错误)。
PS:如果不是这样,我们需要一个示例 PDF 来诊断问题。
Your code sample doesn't show it, but I suspect you're mixing lines and text. You must not draw lines between BT and ET.
If you drew a line between 1 and 3, for example, you'd get the above error (or one similar to it).
PS: If that's not it, we'll need a sample PDF to diagnose the issue.