我有两个由 LiveCycle 创建的 PDF 模板(文件)。在第一个 PDF 文件中,我有一个可能会溢出的文本字段。也就是说,并非所有需要写入该字段的文本都适合该字段。
如果它溢出,那么我喜欢将其余数据写入第二个模板。第二个模板本质上是一个只有一个字段的溢出模板。如果第二个也溢出,则它使用第二个文件并生成第三个文件并将文本溢出到该字段中。这一直持续到所有数据都已写入。
我有什么选择这样做?
我有两个由 LiveCycle 创建的 PDF 模板(文件)。在第一个 PDF 文件中,我有一个可能会溢出的文本字段。也就是说,并非所有需要写入该字段的文本都适合该字段。
如果它溢出,那么我喜欢将其余数据写入第二个模板。第二个模板本质上是一个只有一个字段的溢出模板。如果第二个也溢出,则它使用第二个文件并生成第三个文件并将文本溢出到该字段中。这一直持续到所有数据都已写入。
我有什么选择这样做?
如果你知道字段的点宽和所有的字体设置,你可以模拟一个具有相同字体设置的 Chunk 中的内容,并调用 Chunk.getWidthPoint() 来查看它是否适合。
(循环执行,直到您知道哪个字符之后块太大,并且您知道需要溢出到新模板的其余内容)
也许另一种方法是获取模板的 AcroFields,检索您需要的字段并检查getMaxCharacterLength但是我不知道这是否考虑了字体大小/样式。