[
https://issues.apache.org/jira/browse/PDFBOX-1750?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14107965#comment-14107965
]
Tilman Hausherr commented on PDFBOX-1750:
-----------------------------------------
I don't have much of an opinion because I'm not using that part. I agree that
API must be easy. And we need a sample program that creates an acroform from
scratch. All I found yesterday were examples altering existing PDFs.
> PDTextbox and PDAnnotationWidget are not correct initialized from it's own
> constructor .
> ----------------------------------------------------------------------------------------
>
> Key: PDFBOX-1750
> URL: https://issues.apache.org/jira/browse/PDFBOX-1750
> Project: PDFBox
> Issue Type: Bug
> Components: AcroForm
> Affects Versions: 1.8.2
> Reporter: chen zhenyu
> Labels: AcroForm, Widget
>
> I find 2 Bugs in interactive.form, And I have resolved this 2 Bug. Here are
> the Code
> 1. I want make new Textbox in pdf. It always failed because the type flag
> “COSName.FT,="Tx"” never be set in the constructor.
> The PDTextbox can only be correct initialized from COSDictionary.( That is
> only initialized from exist pdf file) .
> I fixed this by add “getDictionary().setName(COSName.FT, "Tx");” in the
> constructor of PDTextbox.
> Maybe it’s not right place, but works in my project.
> public PDTextbox( PDAcroForm theAcroForm )
> {
> super( theAcroForm );
> getDictionary().setName(COSName.FT, "Tx");
> }
> public PDTextbox( PDAcroForm theAcroForm, COSDictionary field)
> {
> super( theAcroForm, field);
> getDictionary().setName(COSName.FT, "Tx");
> }
> 2. Same Bug in PDAnnotationWidget. Only the default constructor initialize
> the type flag “COSName.SUBTYPE,= "Widget"”.
> But the default constructor were never be used. So I must use the
> PDAnnotationWidget to initialize the new PDTextbox, like blow.
> PDAnnotationWidget Widget = new PDAnnotationWidget();
> PDTextbox textBox = new PDTextbox(acroForm,Widget.getDictionary());
> Otherwise I got an empty PDAnnotationWidget from PDTextbox .getWidget().
> Something not correct in PDField .getWidget().
> If the the PDField create from user(not read from exist pdf file), the
> getWidget cannot get an correct initialized PDAnnotationWidget. The
> COSName.SUBTYPE will never be set.
> Maybe the similar Bug in the whole
> org.apache.pdfbox.pdmodel.interactive.form: the COSDictionary of element are
> not initialized when user create it manually (Typical to insert new acroform
> element).
> I hope that I can give something help to this opensource Project.
> Could you check this and fix in next Version?
--
This message was sent by Atlassian JIRA
(v6.2#6252)