pdf - 如何在 iText 中更改呈现的 PDF 文档中的字体大小?

标签 pdf itext font-size

我正在使用 iText 2.1.7,通过以下依赖项包含在内......

    <dependency>
        <groupId>com.lowagie</groupId>
        <artifactId>itext</artifactId>
        <version>2.1.7</version>
    </dependency>

如何更改要导出的 PDF 中 PDF 字段的文本大小?我使用 OpenOffice 4.1.0 创建了一个 PDF 模板,然后尝试使用此代码来设置文本大小:

            final PdfReader pdfTemplate = new PdfReader(pdfTemplateFile.toString());
            // Prepare to generate a byte output stream
            ByteArrayOutputStream out = new ByteArrayOutputStream();
            PdfStamper stamper = new PdfStamper(pdfTemplate, out);
            stamper.setFormFlattening(true);
    …
            stamper.getAcroFields().setField(PARTICIPANT_FIELD_NAME, user.getFirstName() + " " + user.getLastName());
            stamper.getAcroFields().setFieldProperty(PARTICIPANT_FIELD_NAME, "textsize", new Float(36), null);
            final BaseFont font = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.EMBEDDED);
            stamper.getAcroFields().setFieldProperty(PARTICIPANT_FIELD_NAME, "textfont", font, null);

无论我在“new Float(xxx)”之间输入什么值,字体大小始终呈现相同。我哪里错了?

最佳答案

字段的外观是在您使用 setField() 方法设置字段时生成的。这意味着您按错误的顺序做事。像这样更改您的代码:

AcroFields form = stamper.getAcroFields();
form.setFieldProperty(PARTICIPANT_FIELD_NAME, "textsize", new Float(36), null);
final BaseFont font = BaseFont.createFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.EMBEDDED);
form.setFieldProperty(PARTICIPANT_FIELD_NAME, "textfont", font, null);
form.setField(PARTICIPANT_FIELD_NAME, user.getFirstName() + " " + user.getLastName());

至于您对 iText 2.1.7 的使用,显然是 not a good idea ,但我们想知道为什么您更喜欢使用过时的软件,因此我们聘请了 Black Duck Software 来帮助我们 this survey .

关于pdf - 如何在 iText 中更改呈现的 PDF 文档中的字体大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23763684/

相关文章:

java - 如何使用 iText PDF Java 库打开远程目录?

css - 使不同的字体以相同的实际大小显示?

ubuntu - 使用 pdftk 将多个 pdf 页面合并到特定的 pdf 页面

php - Mpdf 删除页脚并使用它的内容空间

c# 如何动态生成 pdf 文件并将其流式传输到浏览器,而无需写入本地目录

java - IText 像 pdftotext -layout 一样读取 PDF?

java - 如何在 Java 中为 Swing 组件设置字体粗细

css - 关于 robot-or-not.com 代码的几个 CSS 问题

css - Jspdf - fromHtml() - 单页 Pdf

pdf - 使用 golang 提供 pdf