用于插入的pdftk字段名称

时间:2012-05-04 20:06:20

标签: pdf field pdftk fdf

当我做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就像'name'。

我尝试合并以下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 个答案:

答案 0 :(得分:1)

你是如何产生FDF的?以下是从我使用pdftk with

的表单修改的示例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/