[
https://issues.apache.org/jira/browse/PDFBOX-3854?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16074286#comment-16074286
]
Yannick Haser edited comment on PDFBOX-3854 at 7/5/17 6:06 AM:
---------------------------------------------------------------
Okay, sorry I couldn't get it to run yesterday evening on my private PC...
Here the update: I investigated it a bit further and created an better example
for my case.
Updates:
# created a "bigger" pdf (30 Sites)
# The Java-File now converts all Pages instead of only the first and skips
writing the output to the Filesystem (not needed in this showcase)
# Fixed the not terminating Showcase
With Flag:
2.0.6: ~24000ms
2.0.6 with "Quick"Fix: ~12000ms
Without Flag:
2.0.6: ~24000ms
2.0.6 with "Quick"-Fix: ~13000ms
I'm sorry for uploading a bad showcase first. The issue there was, that most of
the "running" time was I/O-related, because the testcase itself was too small.
==> The optimization was not obvious because of normal fluctuation of such tests
was (Author: yaha):
Okay, sorry I couldn't get it to run yesterday evening on my private PC...
Here the update: I investigated it a bit further and created an better example
for my case.
Updates:
# created a "bigger" pdf (30 Sites)
# The Java-File now converts all Pages instead of only the first and skips
writing the output to the Filesystem (not needed in this showcase)
# Fixed the not terminating Showcase
With Flag:
2.0.6: ~24000ms
2.0.6 with "Quick"Fix: ~12000ms
Without Flag:
2.0.6: ~24000ms
2.0.6 with "Quick"-Fix: ~13000ms
I'm sorry for uploading a bad showcase first. The issue there was, that most of
the "running" time was I/O-related, because the testcase itself was too slow.
==> The optimization was not obvious because of normal fluctuation of such tests
> PDDeviceRGB.toRGBImage does not return a RGB-Typed-Image
> --------------------------------------------------------
>
> Key: PDFBOX-3854
> URL: https://issues.apache.org/jira/browse/PDFBOX-3854
> Project: PDFBox
> Issue Type: Bug
> Affects Versions: 2.0.6
> Reporter: Yannick Haser
> Attachments: rgbImageExample0.pdf, rgbImageSecondExample.pdf,
> Starter2.java, Starter.java
>
>
> While converting a PDPage to a BufferedImage (using the PDFRenderer)
> Images-Resources located in the PDPage gets loaded in a WriteableRaster and a
> given Colorspace.
> These get converted to a BufferedImage (with PDDeviceRGB.toRGBImage()). But
> the Type of the returing BufferedImage is with the given Raster and
> Colorspace always from Type "BufferedImage.TYPE_CUSTOM" instead of the
> expected "BufferedImage.TYPE_INT_RGB" for example.
> Consequences:
> Image-Processing-Operations with/on BufferedImages with TYPE_CUSTOM are not
> optimized in Java (slower) and partialy runs through "Synchronized" Blocks.
> ==> Converting different Documents in different Threads are blocking each
> other.
> "Quick"-Fix for seeing a Performance-Improvement in a Multithreading
> Environment:
> {code:title=PDDeviceRGB.java|borderStyle=solid}
> @Override
> public BufferedImage toRGBImage(WritableRaster raster) throws IOException {
> init();
> ColorModel colorModel = new ComponentColorModel(awtColorSpace, false,
> false, Transparency.OPAQUE,
> raster.getDataBuffer().getDataType());
> BufferedImage image = new BufferedImage(colorModel, raster, false,
> null);
> BufferedImage dest = new BufferedImage(image.getWidth(),
> image.getHeight(), BufferedImage.TYPE_INT_RGB);
> ColorConvertOp op = new
> ColorConvertOp(dest.getColorModel().getColorSpace(), null);
> return op.filter(image, dest);
> }
> {code}
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]