Package de.rototor.pdfbox.graphics2d
Class PdfBoxGraphics2DLosslessImageEncoder
java.lang.Object
de.rototor.pdfbox.graphics2d.PdfBoxGraphics2DLosslessImageEncoder
- All Implemented Interfaces:
IPdfBoxGraphics2DImageEncoder
public class PdfBoxGraphics2DLosslessImageEncoder
extends Object
implements IPdfBoxGraphics2DImageEncoder
Encodes all images using lossless compression. Tries to reuse images as much
as possible. You can share an instance of this class with multiple
PdfBoxGraphics2D objects.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprivate static class
private static class
Nested classes/interfaces inherited from interface de.rototor.pdfbox.graphics2d.IPdfBoxGraphics2DImageEncoder
IPdfBoxGraphics2DImageEncoder.IPdfBoxGraphics2DImageEncoderEnv
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate SoftReference
<org.apache.pdfbox.pdmodel.PDDocument> private Map
<PdfBoxGraphics2DLosslessImageEncoder.ImageSoftReference, SoftReference<org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject>> private Map
<PdfBoxGraphics2DLosslessImageEncoder.ProfileSoftReference, SoftReference<org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace>> -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.pdfbox.pdmodel.graphics.image.PDImageXObject
encodeImage
(org.apache.pdfbox.pdmodel.PDDocument document, org.apache.pdfbox.pdmodel.PDPageContentStream contentStream, Image image, IPdfBoxGraphics2DImageEncoder.IPdfBoxGraphics2DImageEncoderEnv env) Encode the given image into the a PDImageXObject
-
Field Details
-
imageMap
private Map<PdfBoxGraphics2DLosslessImageEncoder.ImageSoftReference,SoftReference<org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject>> imageMap -
profileMap
private Map<PdfBoxGraphics2DLosslessImageEncoder.ProfileSoftReference,SoftReference<org.apache.pdfbox.pdmodel.graphics.color.PDColorSpace>> profileMap -
doc
-
-
Constructor Details
-
PdfBoxGraphics2DLosslessImageEncoder
public PdfBoxGraphics2DLosslessImageEncoder()
-
-
Method Details
-
encodeImage
public org.apache.pdfbox.pdmodel.graphics.image.PDImageXObject encodeImage(org.apache.pdfbox.pdmodel.PDDocument document, org.apache.pdfbox.pdmodel.PDPageContentStream contentStream, Image image, IPdfBoxGraphics2DImageEncoder.IPdfBoxGraphics2DImageEncoderEnv env) Description copied from interface:IPdfBoxGraphics2DImageEncoder
Encode the given image into the a PDImageXObject- Specified by:
encodeImage
in interfaceIPdfBoxGraphics2DImageEncoder
- Parameters:
document
- the PDF documentcontentStream
- the content stream of the pageimage
- the image to encode- Returns:
- the encoded image
-