Ah.. or course! Silly me... that was it. Thank you!

On Sun, Mar 20, 2022 at 1:00 PM Tilman Hausherr <thaush...@t-online.de>
wrote:

> Am 20.03.2022 um 19:48 schrieb Andy Czerwonka:
> > The language that I'm using is Scala, targeting Java 11.
> >
> > I just transposed and simplified this example
> > <
> https://svn.apache.org/viewvc/pdfbox/trunk/examples/src/main/java/org/apache/pdfbox/examples/pdmodel/AddMessageToEachPage.java?view=markup>,
>
> > which doesn't expressly close the content stream.
>
> It does close the content stream, this is the try-with-resources syntax.
> That's why I was asking, because I don't know if scala has a similar
> syntax. You MUST close the content stream.
>
> Binary attachments are blocked, please upload to a sharehoster. And take
> care not to save to the file you were loading from.
>
> Tilman
>
> >
> > I've attached the corrupt file, which I just generated via
> > PDDocument.save.
> >
> >
> > On Sun, Mar 20, 2022 at 12:36 PM Tilman Hausherr
> > <thaush...@t-online.de> wrote:
> >
> >     How is it "corrupt"?
> >
> >     What is that programming language and does the "}" close the
> >     content stream?
> >
> >     Tilman
> >
> >     Am 20.03.2022 um 19:26 schrieb Andy Czerwonka:
> >     > I pull the latest 2.x version and am just playing around with
> >     the API. I
> >     > saw some examples, and was trying to add some text to each page.
> >     >
> >     > The following code creates a corrupt PDF. Wondering if anyone
> >     can help me
> >     > understand why.
> >     >
> >     > def addUser(user: UserData, is: InputStream): Try[PDDocument] =
> >     Try {
> >     > val doc = PDDocument.load(is)
> >     > if (doc.isEncrypted) {
> >     > throw new RuntimeException("We can't adjust the PDF if it's
> >     encrypted")
> >     > }
> >     >
> >     > val licensee = s"${user.name <http://user.name>} (${user.email})"
> >     > doc.getPages.forEach { page =>
> >     > val contentStream = new PDPageContentStream(doc, page,
> >     AppendMode.APPEND,
> >     > true, true)
> >     > contentStream.beginText()
> >     > contentStream.setFont(PDType1Font.HELVETICA_BOLD, 15.0f)
> >     > contentStream.setNonStrokingColor(Color.red)
> >     > contentStream.setTextMatrix(Matrix.getTranslateInstance(0, 0));
> >     > contentStream.showText(licensee);
> >     > contentStream.endText();
> >     > }
> >     >
> >     > doc
> >     > }
> >     >
> >     > Best,
> >     >
> >     > Andy
> >     >
> >
> >
> >     ---------------------------------------------------------------------
> >     To unsubscribe, e-mail: users-unsubscr...@pdfbox.apache.org
> >     For additional commands, e-mail: users-h...@pdfbox.apache.org
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail:users-unsubscr...@pdfbox.apache.org
> > For additional commands, e-mail:users-h...@pdfbox.apache.org
>
>

Reply via email to