修改AcroForms
设置自定义表单字段字体
Adobe PDF文件中的表单字段可以配置为使用特定的默认字体。Aspose.PDF允许开发人员应用任何字体作为字段的默认字体,无论是14种核心字体之一还是自定义字体。 要设置和更新用于表单字段的默认字体,Aspose.PDF提供了DefaultAppearance (Font font, double size, Color color)类。可以通过com.aspose.pdf.DefaultAppearance访问该类。要使用此对象,请使用Field类的setDefaultAppearance(..)方法。
以下代码片段演示了如何为PDF表单字段设置默认字体。
// 打开文档
$document = new Document($inputFile);
// 从文档中获取特定表单字段
$field = $document->getForm()->get("textbox1");
// 创建字体对象
$fontRepository = new FontRepository();
$font = $fontRepository->findFont("ComicSansMS");
$colors = new Color();
$blackColor = $colors->getBlack();
// 设置表单字段的字体信息
$field->setDefaultAppearance(new DefaultAppearance($font, 10, $blackColor));
// 保存更新后的文档
$document->save($outputFile);
$document->close();
$document->close();
获取/设置 FieldLimit
此代码演示了如何使用 Document 类打开文档,检索表单字段,设置其最大长度,并使用 ‘setMaxLen’ 和 ‘getMaxLen’ 方法检索最大长度。
// 打开文档
$document = new Document($inputFile);
// 从文档中获取特定表单字段
$field = $document->getForm()->get("textbox1");
$field->setMaxLen(10);
// 使用 DOM 获取字段的最大限制
$responseData = "Limit: " . $field->getMaxLen();
$document->close();
您也可以使用以下代码片段,通过 Aspose.PDF.Facades 命名空间获取相同的值。
// 打开文档
$document = new Document($inputFile);
// 从文档中获取特定表单字段
$field = $document->getForm()->get("textbox1");
// 使用 DOM 获取字段的最大限制
$responseData = "Limit: " . $field->getMaxLen();
$document->close();
同样,Aspose.PDF 具有一种使用 DOM 方法获取字段限制的方法。以下代码片段展示了这些步骤。
// 打开文档
$document = new Document($inputFile);
// 从文档中获取特定表单字段
$field = $document->getForm()->get("textbox1");
// 删除字段
$field->delete();
$document->close();
从 PDF 文档中删除特定表单字段
所有表单字段都包含在 Document 对象的 Form 集合中。此集合提供了管理表单字段的不同方法,包括 delete 方法。如果要删除特定字段,请将字段名称作为参数传递给 delete 方法,然后保存更新后的 PDF 文档。
以下代码片段展示了如何从 PDF 文档中删除命名字段。
// 打开文档
$document = new Document($inputFile);
// 从文档中获取特定表单字段
$field = $document->getForm()->get("textbox1");
// 删除字段
$field->delete();
$document->close();
修改 PDF 文档中的表单字段
Document 对象的 Form 集合允许您管理 PDF 文档中的表单字段。
要修改表单字段,请从 Form 集合中获取字段并设置其属性。然后保存更新的 PDF 文档。
以下代码片段显示了如何修改 PDF 文档中的现有表单字段。
// 打开文档
$document = new Document($inputFile);
// 从文档中获取特定的表单字段
$field = $document->getForm()->get("textbox1");
// 修改字段值
$field->setValue("Updated Value");
// 将字段设置为只读
$field->setReadOnly(true);
// 保存更新后的文档
$document->save($outputFile);
$document->close();
将表单字段移到 PDF 文件中的新位置
如果您想将表单字段移动到 PDF 页面上的新位置,首先获取字段对象,然后为其 setRect 方法指定一个新值。 一个具有新坐标的Rectangle对象被分配给setRect(..)方法。然后使用Document对象的save方法保存更新后的PDF。
以下代码片段向您展示如何将表单字段移动到新位置。
// 打开一个文档
$document = new Document($inputFile);
// 从文档中获取特定的表单字段
$field = $document->getForm()->get("textbox1");
// 修改字段位置
$field->setRect(new Rectangle(300, 400, 600, 500));
// 保存更新后的文档
$document->save($outputFile);
$document->close();