List of usage examples for org.apache.pdfbox.pdmodel.graphics.shading RadialShadingContext getCoords
public float[] getCoords()
From source file:org.apache.fop.render.pdf.pdfbox.PSPDFGraphics2D.java
License:Apache License
protected void applyPaint(Paint paint, boolean fill) { preparePainting();/*from w w w. j a va 2 s. co m*/ if (paint instanceof AxialShadingPaint || paint instanceof RadialShadingPaint) { PaintContext paintContext = paint.createContext(null, new Rectangle(), null, new AffineTransform(), getRenderingHints()); int deviceColorSpace = PDFDeviceColorSpace.DEVICE_RGB; if (paint instanceof AxialShadingPaint) { try { AxialShadingContext asc = (AxialShadingContext) paintContext; float[] fCoords = asc.getCoords(); transformCoords(fCoords, paint, true); PDFunction function = asc.getFunction(); Function targetFT = getFunction(function); if (targetFT != null) { if (targetFT.getFunctions().size() == 5 && targetFT.getFunctions().get(0).getFunctionType() == 0) { return; } List<Double> dCoords = floatArrayToDoubleList(fCoords); PDFDeviceColorSpace colSpace = new PDFDeviceColorSpace(deviceColorSpace); Shading shading = new Shading(2, colSpace, dCoords, targetFT); Pattern pattern = new Pattern(2, shading, null); // gen.write(Gradient.outputPattern(pattern, doubleFormatter)); } } catch (IOException ioe) { handleIOException(ioe); } } else if (paint instanceof RadialShadingPaint) { try { RadialShadingContext rsc = (RadialShadingContext) paintContext; float[] fCoords = rsc.getCoords(); transformCoords(fCoords, paint, false); PDFunction function = rsc.getFunction(); Function targetFT3 = getFunction(function); List<Double> dCoords = floatArrayToDoubleList(fCoords); PDFDeviceColorSpace colSpace = new PDFDeviceColorSpace(deviceColorSpace); Shading shading = new Shading(3, colSpace, dCoords, targetFT3); Pattern pattern = new Pattern(2, shading, null); // gen.write(Gradient.outputPattern(pattern, doubleFormatter)); } catch (IOException ioe) { handleIOException(ioe); } } } }