将动态生成的 PDF 的多行表单域中的文本对齐到顶部
Align text to top in multiline form fields for dynamically generated PDF
我有一个 PDF 表单,多行字段的文本在中间对齐,我正在寻找一个脚本,该脚本将在文件打开时执行,而不是将这些文本对齐到顶部。
它是使用此转换器 (https://www.idrsolutions.com/online-pdf-to-html5-converter) 创建的,用于生成 HTML 版本的 PDF 表单。然后有一个将它转换回PDF的功能。
例如:https://files.idrsolutions.com/Examples/FDFForms/CVData/form.html
您可以输入一些文本,然后单击保存图标以生成 PDF。
这里也是生成的文件:https://devcn.000webhostapp.com/temp/sampleAlign.pdf
在生成的 PDF 中,出现在多行表单域中的文本居中对齐。如果您编辑带有更改的文本,则将其对齐到顶部。此外,如果您 select 字段属性并更改多行复选框 deselecting 并再次 selecting ,则文本也会与顶部对齐。想以某种方式自动执行此操作,以便当用户打开 PDF 时,文本与顶部对齐。
首先,Acrobat 中的多行文本字段始终对齐到顶部,除非该字段设置为允许富文本并且用户定义该字段将文本垂直居中对齐;无法以编程方式在典型的 PDF 字段中定义垂直对齐中心并使其坚持通过用户编辑。
您第一次打开文件时看到的是转换器生成的字段外观。您可以在文档级别添加一个脚本来切换 "delay" 属性,这将导致查看器重新生成外观。您可以将其添加到文档级脚本,以便在文件首次打开时 运行s。请参阅下面的代码和警告。
nFields = this.numFields;
for (var i = 0; i < nFields; i++) {
var f = this.getField(this.getNthFieldName(i));
f.delay = true;
f.delay = false
}
但是,这只会 运行 在具有 JavaScript 功能的查看器中,可以像 Acrobat 和 Reader 以及其他一些人一样编辑 PDF。当我选择你的 link 时,它首先在 Chrome 中打开,而不是执行 JavaScript。不幸的是,现在大多数浏览器都内置了不支持 javascript 的查看器,因此文件 first 被用户打开并让您的脚本 运行 的可能性很低.您需要在转换过程中修复外观,而不是在查看器中。
为此,要么预处理 HTML 以便转换器生成的外观与 将 生成的 PDF 字段的属性相匹配,要么说服 IDR更新他们的软件以创建反映生成的场的属性而不是 HTML 场源的属性的外观。
我有一个 PDF 表单,多行字段的文本在中间对齐,我正在寻找一个脚本,该脚本将在文件打开时执行,而不是将这些文本对齐到顶部。
它是使用此转换器 (https://www.idrsolutions.com/online-pdf-to-html5-converter) 创建的,用于生成 HTML 版本的 PDF 表单。然后有一个将它转换回PDF的功能。
例如:https://files.idrsolutions.com/Examples/FDFForms/CVData/form.html
您可以输入一些文本,然后单击保存图标以生成 PDF。
这里也是生成的文件:https://devcn.000webhostapp.com/temp/sampleAlign.pdf
在生成的 PDF 中,出现在多行表单域中的文本居中对齐。如果您编辑带有更改的文本,则将其对齐到顶部。此外,如果您 select 字段属性并更改多行复选框 deselecting 并再次 selecting ,则文本也会与顶部对齐。想以某种方式自动执行此操作,以便当用户打开 PDF 时,文本与顶部对齐。
首先,Acrobat 中的多行文本字段始终对齐到顶部,除非该字段设置为允许富文本并且用户定义该字段将文本垂直居中对齐;无法以编程方式在典型的 PDF 字段中定义垂直对齐中心并使其坚持通过用户编辑。
您第一次打开文件时看到的是转换器生成的字段外观。您可以在文档级别添加一个脚本来切换 "delay" 属性,这将导致查看器重新生成外观。您可以将其添加到文档级脚本,以便在文件首次打开时 运行s。请参阅下面的代码和警告。
nFields = this.numFields;
for (var i = 0; i < nFields; i++) {
var f = this.getField(this.getNthFieldName(i));
f.delay = true;
f.delay = false
}
但是,这只会 运行 在具有 JavaScript 功能的查看器中,可以像 Acrobat 和 Reader 以及其他一些人一样编辑 PDF。当我选择你的 link 时,它首先在 Chrome 中打开,而不是执行 JavaScript。不幸的是,现在大多数浏览器都内置了不支持 javascript 的查看器,因此文件 first 被用户打开并让您的脚本 运行 的可能性很低.您需要在转换过程中修复外观,而不是在查看器中。
为此,要么预处理 HTML 以便转换器生成的外观与 将 生成的 PDF 字段的属性相匹配,要么说服 IDR更新他们的软件以创建反映生成的场的属性而不是 HTML 场源的属性的外观。