Outdated iText example in documentation

Ron Friedman <[email protected]> Tue, 5 Sep 2023 17:26:58 +0000
Newsgroups gmane.text.xml.fop.user
Message-ID <VI1PR04MB5421C7CE018E9E5450A66EDAFAE8A@VI1PR04MB5421.eurprd04.prod.outlook.com>
--_002_VI1PR04MB5421C7CE018E9E5450A66EDAFAE8AVI1PR04MB5421eurp_
Content-Type: text/plain; charset="Windows-1252"
Content-Transfer-Encoding: quoted-printable

Hello,=A0=0A=
=A0=0A=
The sample code for encrypting a PDF on the output formats [1] page is usin=
g an outdated version of iText.=A0=0A=
I have attached an updated snippet that achieves the same behavior using iT=
ext 7.=A0=0A=
=A0=0A=
Also, the warning that iText =93may swallow PDF bookmarks=94 does not appea=
r to be relevant anymore.=A0=0A=
From my testing, opening, editing, and saving a PdfDocument [2] preserves e=
xisting bookmarks.=A0=0A=
=A0=0A=
The recommended fix (FOP-1100 [3]) is no longer relevant since PdfStamper d=
oesn=92t exist in modern versions of iText.=A0=0A=
Instead, creating a PdfDocument with both an input PdfReader and an output =
PdfWriter (as in the new sample code) opens the document in =93stamping mod=
e=94, which does not destroy bookmarks.=A0=0A=
=A0=0A=
An update to the website reflecting these changes would be much appreciated=
.=A0=0A=
=A0=0A=
Sincerely,=A0=0A=
Ron Friedman =0A=
=0A=
[1] https://xmlgraphics.apache.org/fop/trunk/output.html=0A=
[2] https://api.itextpdf.com/iText/java/8.0.0/com/itextpdf/kernel/pdf/PdfDo=
cument.html=0A=
[3] https://issues.apache.org/jira/browse/FOP-1100=

--_002_VI1PR04MB5421C7CE018E9E5450A66EDAFAE8AVI1PR04MB5421eurp_
Content-Type: application/octet-stream; name="updated_itext_example.java"
Content-Description: updated_itext_example.java
Content-Disposition: attachment; filename="updated_itext_example.java";
	size=1070; creation-date="Tue, 05 Sep 2023 17:16:08 GMT";
	modification-date="Tue, 05 Sep 2023 17:18:17 GMT"
Content-Transfer-Encoding: base64

cHVibGljIHN0YXRpYyB2b2lkIG1haW4oU3RyaW5nW10gYXJncykgewogICAgdHJ5IHsKICAgICAg
ICBCeXRlQXJyYXlPdXRwdXRTdHJlYW0gZm9wb3V0ID0gbmV3IEJ5dGVBcnJheU91dHB1dFN0cmVh
bSgpOwogICAgICAgIEZvcEZhY3RvcnkgZm9wRmFjdG9yeSA9IEZvcEZhY3RvcnkubmV3SW5zdGFu
Y2UobmV3IEZpbGUoIi4iKS50b1VSSSgpKTsKICAgICAgICBGb3AgZm9wID0gZm9wRmFjdG9yeS5u
ZXdGb3AoTWltZUNvbnN0YW50cy5NSU1FX1BERiwgZm9wb3V0KTsKCiAgICAgICAgVHJhbnNmb3Jt
ZXIgdHJhbnNmb3JtZXIgPSBUcmFuc2Zvcm1lckZhY3RvcnkubmV3SW5zdGFuY2UoKS5uZXdUcmFu
c2Zvcm1lcigKICAgICAgICAgICAgICAgIG5ldyBTdHJlYW1Tb3VyY2UobmV3IEZpbGUoYXJnc1sx
XSkpKTsKICAgICAgICB0cmFuc2Zvcm1lci50cmFuc2Zvcm0obmV3IFN0cmVhbVNvdXJjZShuZXcg
RmlsZShhcmdzWzBdKSksCiAgICAgICAgICAgICAgICBuZXcgU0FYUmVzdWx0KGZvcC5nZXREZWZh
dWx0SGFuZGxlcigpKSk7CgogICAgICAgIFN0cmluZyB1c2VyUGFzc3dvcmQgPSAicGRmIjsKICAg
ICAgICBQZGZSZWFkZXIgcmVhZGVyID0gbmV3IFBkZlJlYWRlcihuZXcgQnl0ZUFycmF5SW5wdXRT
dHJlYW0oZm9wb3V0LnRvQnl0ZUFycmF5KCkpKTsKICAgICAgICBQZGZXcml0ZXIgd3JpdGVyID0g
bmV3IFBkZldyaXRlcihhcmdzWzJdLCBuZXcgV3JpdGVyUHJvcGVydGllcygpLnNldFN0YW5kYXJk
RW5jcnlwdGlvbigKICAgICAgICAgICAgICAgIHVzZXJQYXNzd29yZC5nZXRCeXRlcygpLAogICAg
ICAgICAgICAgICAgbnVsbCwKICAgICAgICAgICAgICAgIEVuY3J5cHRpb25Db25zdGFudHMuQUxM
T1dfQ09QWSwKICAgICAgICAgICAgICAgIEVuY3J5cHRpb25Db25zdGFudHMuU1RBTkRBUkRfRU5D
UllQVElPTl80MCkpOwogICAgICAgIFBkZkRvY3VtZW50IGRvYyA9IG5ldyBQZGZEb2N1bWVudChy
ZWFkZXIsIHdyaXRlcik7CiAgICAgICAgZG9jLmNsb3NlKCk7CiAgICB9IGNhdGNoIChFeGNlcHRp
b24gZSkgewogICAgICAgIGUucHJpbnRTdGFja1RyYWNlKCk7CiAgICB9Cn0=


--_002_VI1PR04MB5421C7CE018E9E5450A66EDAFAE8AVI1PR04MB5421eurp_
Content-Type: text/plain; charset=us-ascii


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
--_002_VI1PR04MB5421C7CE018E9E5450A66EDAFAE8AVI1PR04MB5421eurp_--