Class AxialShading
java.lang.Object
com.inductiveautomation.rm.pdf.reader.PDFPattern
com.inductiveautomation.rm.pdf.reader.fps.ShadingPattern
com.inductiveautomation.rm.pdf.reader.fps.AxialShading
- All Implemented Interfaces:
Paint
,PaintContext
,Transparency
Implementation of Type 2 shadings, which vary color along a linear axis.
The shading takes a pixel in the area to be to filled and drops a perpendicular to the axis defined by coords[]. It then calculates the parametric point t of the intersection, with t running from domain[0] to domain[1] along the axis. t is then turned into a color value using the supplied pdf function. TODO: currently ignores transform
-
Field Summary
Fields inherited from class com.inductiveautomation.rm.pdf.reader.fps.ShadingPattern
ArbitraryColorSpaceShading, DeviceGrayShading, DeviceRGBShading
Fields inherited from interface java.awt.Transparency
BITMASK, OPAQUE, TRANSLUCENT
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
doShading
(int[] samples, int x, int y, int w, int h) Subclasses should implement this method to draw the shading.void
initializeShadingParameters
(Map shadingDict, PDFFile srcFile) Read the shading parametersvoid
setDeviceTransform
(AffineTransform x, Rectangle devRect) Sets the transform from user space to device spaceMethods inherited from class com.inductiveautomation.rm.pdf.reader.fps.ShadingPattern
createContext, dispose, getBounds, getColorModel, getInstance, getPaint, getRaster, getRGBAPixel, getTransform, getTransparency, setColorSpace
Methods inherited from class com.inductiveautomation.rm.pdf.reader.PDFPattern
getGState, getInstance
-
Constructor Details
-
AxialShading
-
-
Method Details
-
initializeShadingParameters
Read the shading parameters- Overrides:
initializeShadingParameters
in classShadingPattern
-
doShading
public void doShading(int[] samples, int x, int y, int w, int h) Description copied from class:ShadingPattern
Subclasses should implement this method to draw the shading. Samples is defined to be an array of 8 bit persample/4 samples per pixel ARGB pixels. There is no padding, so all scanlines are w integers wide.- Specified by:
doShading
in classShadingPattern
-
setDeviceTransform
Sets the transform from user space to device space- Overrides:
setDeviceTransform
in classShadingPattern
-