PDFTK插入字段名称

4

当我运行命令pdftk samplex.pdf dump_data_fields时,我得到的字段格式如下:

例如:

  FieldType: Text
  FieldName: form1[0].Page1[0].Header[0].RepeatHeader[0].Project[0]
  FieldNameAlt: Project
  FieldFlags: 0
  FieldJustification: Left

我有一个使用pdftk填充字段的样例,但它是一个更简单的格式,FieldNames类似于“名称”。

我尝试合并以下fdf以获取此字段的填充内容(如下所示,我尝试了长名称和短名称),但似乎没有起作用,对此有什么想法吗?

%FDF-1.2
%âãÏÓ
1 0 obj
<< 
/FDF << /Fields [ << /V (Something wonderful!)/T <br/>(form1[0].Page1[0].Header[0].RepeatHeader[0].Project[0]) /ClrF 2 /ClrFf 1 >> 
<< /V (Something)/T (Activity) /ClrF 2 /ClrFf 1 >> 
<< /V (Something else)/T (Project) /ClrF 2 /ClrFf 1 >> 
<< /V (Arthur, King of the Britons)/T (name) /ClrF 2 /SetFf 1 >> 
<< /V ()/T (submit_name) /ClrF 2 /ClrFf 1 >> 
<< /V ()/T (name_border) /ClrF 2 /ClrFf 1 >> 
<< /V ()/T (name_border_red) /ClrF 2 /ClrFf 1 >> 
<< /V (I seek the Holy Grail.)/T (quest) /ClrF 2 /SetFf 1 >> 
<< /V ()/T (submit_quest) /ClrF 2 /ClrFf 1 >> 
<< /V ()/T (quest_border) /ClrF 2 /ClrFf 1 >> 
<< /V ()/T (quest_border_red) /ClrF 2 /ClrFf 1 >> 
<< /V (Blue... no, yellow!)/T (color) /ClrF 2 /ClrFf 1 >> 
<< /V ()/T (submit_color) /ClrF 2 /ClrFf 1 >> 
<< /V ()/T (color_border) /ClrF 2 /ClrFf 1 >> 
<< /V ()/T (color_border_red) /ClrF 2 /ClrFf 1 >> 
<< /V ()/T (message_red) /ClrF 2 /ClrFf 1 >> 
<< /V ()/T (message_green) /ClrF 2 /ClrFf 1 >> 
] 
>> 
>> 
endobj
trailer
<<
/Root 1 0 R 

>>
%%EOF
1个回答

1
你是如何生成你的FDF文件的?这里有一个例子,是我使用pdftk修改表单后生成的FDF文件。
表单的字段层次结构如下:

form1[0].Page1[0].Title[0]
form1[0].Page1[0].Item[0]
form1[0].Page1[0].Year[0]
form1[0].Page1[0].Desc[0]

%FDF-1.2 %���� 1 0 obj << 
    /FDF << 
        /Fields [
            << /T (form1[0]) /Kids [ 
                << /T (Page1[0]) /Kids [ 
                    << /T (Title[0]) /V (Android Phone) /ClrF 2 /ClrFf 1 >> 
                    << /T (Item[0]) /V (Evo 3D) /ClrF 2 /ClrFf 1 >>
                    << /T (Year[0]) /V (2011) /ClrF 2 /ClrFf 1 >> 
                    << /T (Desc[0]) /V (3D Smart Phone) /ClrF 2 /ClrFf 1 >> 
                ] >> 
            ] >> 
        ] 
    >> 
>> endobj trailer << /Root 1 0 R >> %%EOF

所以你没有/Kids包装器,并且你没有使用字段索引号。尝试修改你的FDF,像我的例子一样,看看是否有效。

如果你是PHP用户,你应该查看pdftk-php。我在我们的服务器上使用它将mysql数据注入到livecycle pdf中,用于各种用途,它非常好地处理了pdftk fdf注入部分: http://www.andrewheiss.com/blog/2009/06/19/pdftk-php-officially-released/


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接