Hi,

Am 03.06.2015 um 13:20 schrieb Jesse Long:
On 03/06/2015 12:46, Andreas Lehmkühler wrote:
Hi,

Jesse Long <[email protected]> hat am 3. Juni 2015 um 08:45 geschrieben:


On 02/06/2015 17:48, Andreas Lehmkuehler wrote:
Hi,

Am 02.06.2015 um 16:15 schrieb Jesse Long:
Hi All,

Regarding PDFBOX-2301, and the use of scratch files: right now, each
COSStream
uses one or two scratch files.

I recently ran into the problem on Linux where the max number of open
files
allowed to the JVM by the OS was reached because of this.

Is there a plan around this?

Is it maybe that my use case is not expected?
I'm aware of that. The refactoring is still in progress. I expect to
reduce the number of open files.

My use case is:
Open PDDocument 1
Open PDDocument 2
for a few hundred times
          import page 1 of PDDocument 1 into PDDocument 2 and overlay
some stuff
ontop.
save PDDocument 2.

I have written a patch to use one single java.io.RandomAccessFile as
a scratch
file per COSDocument, using pages in a doubly linked list to separate
streams in
the same file. Would you be interested in adding this to PDFBox?
To use one file only led to problems when creating pdfs from scratch.
It is possible to write to 2 COSStreams at the same time which
corrupts pdf.
Hi Andreas,

Do you mean at the same time, as in multiple threads, or single thread
writing a bit to this stream and then a bit to another stream back and
forth?
It's about the second case. You can't add fonts and/or images to a page while
adding content to a contentstream the same time. You have to add those before
opening a stream or you have to close the stream before

For the single thread use case, I have solved this in my patch.
Actually, even multiple thread should be easy to support with
synchronization. I'll work on some docs and submit and you can see if
you like it.
At least it sounds interesting and I'm happy to look at it.


Please see patch attached.
I've added the patch in r1683929 to the trunk with some sligth modifications.

Thanks,
Jesse

Thanks for the contribution!!

BR
Andreas

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

Reply via email to