Package org.apache.fop.pdf
Class PDFColorHandler
- java.lang.Object
-
- org.apache.fop.pdf.PDFColorHandler
-
public class PDFColorHandler extends java.lang.Object
This class handles the registration of color spaces and the generation of PDF code to select the right colors given aColor
instance.
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Map<java.lang.String,PDFCIELabColorSpace>
cieLabColorSpaces
private org.apache.commons.logging.Log
log
private PDFResourceContext
resourceContext
private PDFResources
resources
-
Constructor Summary
Constructors Constructor Description PDFColorHandler(PDFResources resources, PDFResourceContext resourceContext)
Create a new instance for the givenPDFResources
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
establishColor(java.lang.StringBuffer codeBuffer, java.awt.Color color, boolean fill, boolean alpha)
Generates code to select the given color and handles the registration of color spaces in PDF where necessary.private void
establishColor(java.lang.StringBuffer codeBuffer, PDFColorSpace pdfcs, java.awt.Color color, boolean fill)
private boolean
establishColorFromColor(java.lang.StringBuffer codeBuffer, java.awt.Color color, boolean fill)
private void
establishDeviceCMYK(java.lang.StringBuffer codeBuffer, java.awt.Color color, boolean fill)
private void
establishDeviceRGB(java.lang.StringBuffer codeBuffer, java.awt.Color color, boolean fill, boolean alpha)
private PDFCIELabColorSpace
getCIELabColorSpace(org.apache.xmlgraphics.java2d.color.CIELabColorSpace labCS)
private PDFDocument
getDocument()
private PDFICCBasedColorSpace
getICCBasedColorSpace(java.awt.color.ICC_ColorSpace cs)
private PDFSeparationColorSpace
getSeparationColorSpace(org.apache.xmlgraphics.java2d.color.NamedColorSpace cs)
private void
selectColorSpace(java.lang.StringBuffer codeBuffer, PDFColorSpace pdfcs, boolean fill)
private void
writeAlpha(java.awt.Color color, java.lang.StringBuffer codeBuffer)
private void
writeColor(java.lang.StringBuffer codeBuffer, float[] comps, int componentCount, java.lang.String command)
private void
writeColor(java.lang.StringBuffer codeBuffer, java.awt.Color color, int componentCount, java.lang.String command)
-
-
-
Field Detail
-
log
private org.apache.commons.logging.Log log
-
resources
private PDFResources resources
-
resourceContext
private PDFResourceContext resourceContext
-
cieLabColorSpaces
private java.util.Map<java.lang.String,PDFCIELabColorSpace> cieLabColorSpaces
-
-
Constructor Detail
-
PDFColorHandler
public PDFColorHandler(PDFResources resources, PDFResourceContext resourceContext)
Create a new instance for the givenPDFResources
- Parameters:
resources
- the PDF resources
-
-
Method Detail
-
getDocument
private PDFDocument getDocument()
-
establishColor
public void establishColor(java.lang.StringBuffer codeBuffer, java.awt.Color color, boolean fill, boolean alpha)
Generates code to select the given color and handles the registration of color spaces in PDF where necessary.- Parameters:
codeBuffer
- the target buffer to receive the color selection codecolor
- the colorfill
- true for fill color, false for stroke color
-
establishColorFromColor
private boolean establishColorFromColor(java.lang.StringBuffer codeBuffer, java.awt.Color color, boolean fill)
-
getICCBasedColorSpace
private PDFICCBasedColorSpace getICCBasedColorSpace(java.awt.color.ICC_ColorSpace cs)
-
getSeparationColorSpace
private PDFSeparationColorSpace getSeparationColorSpace(org.apache.xmlgraphics.java2d.color.NamedColorSpace cs)
-
getCIELabColorSpace
private PDFCIELabColorSpace getCIELabColorSpace(org.apache.xmlgraphics.java2d.color.CIELabColorSpace labCS)
-
establishColor
private void establishColor(java.lang.StringBuffer codeBuffer, PDFColorSpace pdfcs, java.awt.Color color, boolean fill)
-
selectColorSpace
private void selectColorSpace(java.lang.StringBuffer codeBuffer, PDFColorSpace pdfcs, boolean fill)
-
establishDeviceRGB
private void establishDeviceRGB(java.lang.StringBuffer codeBuffer, java.awt.Color color, boolean fill, boolean alpha)
-
writeAlpha
private void writeAlpha(java.awt.Color color, java.lang.StringBuffer codeBuffer)
-
establishDeviceCMYK
private void establishDeviceCMYK(java.lang.StringBuffer codeBuffer, java.awt.Color color, boolean fill)
-
writeColor
private void writeColor(java.lang.StringBuffer codeBuffer, java.awt.Color color, int componentCount, java.lang.String command)
-
writeColor
private void writeColor(java.lang.StringBuffer codeBuffer, float[] comps, int componentCount, java.lang.String command)
-
-