I am seeing the same behavior that Dick is seeing with Tillman's file in
Preview (Version 10.1 (944.6.16.1)), but not with a file of my own.

In the past two weeks I was asked to write program to fill in a PDF form
from a file of name:value pairs, and flatten it. I
used ((PDCheckBox)pdField).check() and ((PDCheckBox)pdField).unCheck() for
the checkboxes and pdField.setValue(value) for others of field type "Btn"
and for "Tx", then flattened and saved the result with

acroForm.flatten();
pdfDocument.save(outpdf);
pdfDocument.close();

The resulting file in truly flat. I cannot alter the checkboxes or any
other field in Preview.

The original form was created on a Mac with PDFpenPro, but I don't know the
version. I can post my code if desired, but I can't release the PDF without
permission, and the person responsible for it is out of the office all next
week.



On Sat, Feb 22, 2020 at 2:33 PM Dick Martin <rtmar...@nycap.rr.com> wrote:

> Aleksandar and Tilman,
> I was curious as I use MacOS. I opened Tilman's result file in Preview.  I
> was indeed able to place a checkmark in the checkboxes.  Interestingly, I
> could also drag the checkmark around out of the box.  I opened the file
> (saved in Preview with 2 checkboxes checked) with Adobe Reader (Mac),
> Acrobat X (Win7), and PDFCreator(from Nuance; Win7).  I all 3 of those, the
> checkboxes were disabled (couldn't set a checkmark) but, interestingly, I
> still could drag the checkmark out of the box.  So, it does look like
> idiosyncratic behavior of Mac Preview app.
> Dick
>
> On Sat, Feb 22, 2020 at 1:16 PM Tilman Hausherr <thaush...@t-online.de>
> wrote:
>
> > Am 22.02.2020 um 18:33 schrieb Aleksandar Simic:
> > > Hello Tilman
> > >
> > > On Sat, Feb 22, 2020 at 4:08 PM Tilman Hausherr <thaush...@t-online.de
> >
> > > wrote:
> > >
> > >> What PDFBox version are you using?
> > >>
> > > I was using 2.0.16
> > > https://github.com/dotemacs/pdfboxing/blob/flatten-form/project.clj#L7
> > >
> > > I tested it with the trunk and it works fine.
> > > Here is my Java code:
> > > https://gist.github.com/ff9fb8ccf11abeb2ac6c1c461f2c1eb9
> > >
> > > Compiled it with PDFBox 2.0.18 and commons-logging 1.1.2.
> > >
> > > Opening it in macOS' Preview PDF viewer, I can still check the
> > checkboxes.
> > > But *not* in Adobe's Acrobat Reader DC version 2020.006.20034.
> > >
> > > The upgraded the Clojure project and the behaviour is the same:
> > > - I can check the checkboxes in Preview
> > > - I can't check the checkboxes in Acrobat Reader DC
> > >
> > > What PDF viewer did you use to verify the flattening ?
> >
> >
> > Adobe Reader DC.
> >
> > Here's my result file:
> >
> > http://www.filedropper.com/interactiveform-saved
> >
> > I looked with PDFDebugger, there are no more checkbox fields.
> >
> > Please try with that file.
> >
> > If my file brings the same effect, then I'd say this is a weird behavior
> > of MacOS Preview. Maybe it transforms anything that looks like a
> > checkbox into a field?
> >
> >
> > >
> > > Btw using getFields() is not correct (see javadoc why)
> > > Looking at:
> > >
> > >
> >
> https://pdfbox.apache.org/docs/2.0.13/javadocs/org/apache/pdfbox/pdmodel/interactive/form/PDAcroForm.html#getFields--
> > >
> > > (Note: 2.0.13 is the latest documentation linked from
> > > https://pdfbox.apache.org/ )
> > >
> > > Is the reason that .getFields returns only the top level fields and not
> > the
> > > nested ones?
> > > So I'll have to loop through them to flatten all the child fields?
> >
> >
> > No, this is more a general observation. I don't think you have to set
> > then readonly at all.
> >
> > Tilman
> >
> >
> >
> >
> > >
> > > Thank you for your time
> > > Aleksandar
> > >
> > >
> > > Am 22.02.2020 um 16:45 schrieb Aleksandar Simic:
> > >>> Hello PDFBox users
> > >>>
> > >>> I'm trying to flatten a PDF form so that it's no longer editable.
> > >>>
> > >>> I can flatten the text fields, but the checkboxes are still editable
> > >>> (you're able to check them).
> > >>>
> > >>> I am doing this in Clojure, but that should not (I hope) do anything
> > >> special
> > >>> I get a PDF, get its forms and then I set them to read only.
> > >>>
> > >>> Is there a step that I'm missing?
> > >>>
> > >>> The code in question is here:
> > >>>
> > >>>
> > >>
> >
> https://github.com/dotemacs/pdfboxing/commit/d62a3da18de258a5ca596b22cfa42d4552de9d60
> > >>> The form I'm trying to edit is here:
> > >>>
> > >>>
> > >>
> >
> https://github.com/dotemacs/pdfboxing/blob/flatten-form/test/pdfs/interactiveform.pdf
> > >>
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: users-unsubscr...@pdfbox.apache.org
> > For additional commands, e-mail: users-h...@pdfbox.apache.org
> >
> >
>


-- 
"Hell hath no limits, nor is circumscrib'd In one self-place; but where we
are is hell, And where hell is, there must we ever be" --Christopher
Marlowe, *Doctor Faustus* (v. 111-13)

Reply via email to