public FSColor darkenColor() { float[] hsb = RGBtoHSB(getRed(), getGreen(), getBlue(), null); float hBase = hsb[0]; float sBase = hsb[1]; float bBase = hsb[2]; float hDarker = hBase; float sDarker = sBase; float bDarker = 0.56f*bBase; int[] rgb = HSBtoRGB(hDarker, sDarker, bDarker); return new FSRGBColor(rgb[0], rgb[1], rgb[2]); }
@Override public void setPaint(Paint paint) { if (paint instanceof Color) { Color c = (Color) paint; this.setColor(new FSRGBColor(c.getRed(), c.getGreen(), c.getBlue())); } else { XRLog.render(Level.WARNING, "Unknown paint: " + paint.getClass().getCanonicalName()); } }
@Override public void setPaint(Paint paint) { if (paint instanceof Color) { Color c = (Color) paint; this.setColor(new FSRGBColor(c.getRed(), c.getGreen(), c.getBlue())); } else { XRLog.render(Level.WARNING, "Unknown paint: " + paint.getClass().getCanonicalName()); } }
@Override public void setColor(FSColor color) { if (color instanceof FSRGBColor) { FSRGBColor rgb = (FSRGBColor) color; _graphics.setColor(new Color(rgb.getRed(), rgb.getGreen(), rgb.getBlue())); } else { throw new RuntimeException("internal error: unsupported color class " + color.getClass().getName()); } }
public FSColor lightenColor() { float[] hsb = RGBtoHSB(getRed(), getGreen(), getBlue(), null); float hBase = hsb[0]; float sBase = hsb[1]; float bBase = hsb[2]; float hLighter = hBase; float sLighter = 0.35f*bBase*sBase; float bLighter = 0.6999f + 0.3f*bBase; int[] rgb = HSBtoRGB(hLighter, sLighter, bLighter); return new FSRGBColor(rgb[0], rgb[1], rgb[2]); }
@Override public void setPaint(Paint paint) { if (paint instanceof Color) { Color c = (Color) paint; this.setColor(new FSRGBColor(c.getRed(), c.getGreen(), c.getBlue())); } else { XRLog.render(Level.WARNING, "Unknown paint: " + paint.getClass().getCanonicalName()); } }
@Override public void setPaint(Paint paint) { if (paint instanceof Color) { Color c = (Color) paint; this.setColor(new FSRGBColor(c.getRed(), c.getGreen(), c.getBlue())); } else { XRLog.render(Level.WARNING, "Unknown paint: " + paint.getClass().getCanonicalName()); } }
private void ensureStrokeColor() { if (!(_color.equals(_strokeColor))) { _strokeColor = _color; if (_strokeColor instanceof FSRGBColor) { FSRGBColor rgb = (FSRGBColor) _strokeColor; _cp.setStrokingColor(rgb.getRed(), rgb.getGreen(), rgb.getBlue()); } else if (_strokeColor instanceof FSCMYKColor) { FSCMYKColor cmyk = (FSCMYKColor) _strokeColor; _cp.setStrokingColor(cmyk.getCyan(), cmyk.getMagenta(), cmyk.getYellow(), cmyk.getBlack()); } else { assert(_strokeColor instanceof FSRGBColor || _strokeColor instanceof FSCMYKColor); } } }
private PropertyValue hexcolor() throws IOException { //System.out.println("hexcolor()"); PropertyValue result = null; Token t = next(); if (t == Token.TK_HASH) { String s = getTokenValue(t); if ((s.length() != 3 && s.length() != 6) || ! isHexString(s)) { push(t); throw new CSSParseException('#' + s + " is not a valid color definition", getCurrentLine()); } FSRGBColor color = null; if (s.length() == 3) { color = new FSRGBColor( convertToInteger(s.charAt(0), s.charAt(0)), convertToInteger(s.charAt(1), s.charAt(1)), convertToInteger(s.charAt(2), s.charAt(2))); } else { /* s.length == 6 */ color = new FSRGBColor( convertToInteger(s.charAt(0), s.charAt(1)), convertToInteger(s.charAt(2), s.charAt(3)), convertToInteger(s.charAt(4), s.charAt(5))); } result = new PropertyValue(color); skip_whitespace(); } else { push(t); throw new CSSParseException(t, Token.TK_HASH, getCurrentLine()); } return result; }
return new FSRGBColor(red, green, blue);
private void ensureFillColor() { if (!(_color.equals(_fillColor))) { _fillColor = _color; if (_fillColor instanceof FSRGBColor) { FSRGBColor rgb = (FSRGBColor) _fillColor; _cp.setFillColor(rgb.getRed(), rgb.getGreen(), rgb.getBlue()); } else if (_fillColor instanceof FSCMYKColor) { FSCMYKColor cmyk = (FSCMYKColor) _fillColor; _cp.setFillColor(cmyk.getCyan(), cmyk.getMagenta(), cmyk.getYellow(), cmyk.getBlack()); } else { assert(_fillColor instanceof FSRGBColor || _fillColor instanceof FSCMYKColor); } } }
public FSColor getEffBackgroundColor(RenderingContext c) { FSColor result = null; Box current = this; while (current != null) { result = current.getStyle().getBackgroundColor(); if (result != null) { return result; } current = current.getContainingBlock(); } PageBox page = c.getPage(); result = page.getStyle().getBackgroundColor(); if (result == null) { return new FSRGBColor(255, 255, 255); } else { return result; } }
private void ensureFillColor() { if (!(_color.equals(_fillColor))) { _fillColor = _color; if (_fillColor instanceof FSRGBColor) { FSRGBColor rgb = (FSRGBColor) _fillColor; _cp.setFillColor(rgb.getRed(), rgb.getGreen(), rgb.getBlue()); } else if (_fillColor instanceof FSCMYKColor) { FSCMYKColor cmyk = (FSCMYKColor) _fillColor; _cp.setFillColor(cmyk.getCyan(), cmyk.getMagenta(), cmyk.getYellow(), cmyk.getBlack()); } else { assert(_fillColor instanceof FSRGBColor || _fillColor instanceof FSCMYKColor); } } }
private void drawFontMetrics(RenderingContext c, InlineText inlineText) { InlineLayoutBox iB = inlineText.getParent(); String text = inlineText.getSubstring(); setColor(new FSRGBColor(0xFF, 0x33, 0xFF)); FSFontMetrics fm = iB.getStyle().getFSFontMetrics(null); int width = c.getTextRenderer().getWidth( c.getFontContext(), iB.getStyle().getFSFont(c), text); int x = iB.getAbsX() + inlineText.getX(); int y = iB.getAbsY() + iB.getBaseline(); drawLine(x, y, x + width, y); y += (int) Math.ceil(fm.getDescent()); drawLine(x, y, x + width, y); y -= (int) Math.ceil(fm.getDescent()); y -= (int) Math.ceil(fm.getAscent()); drawLine(x, y, x + width, y); }
private void ensureStrokeColor() { if (!(_color.equals(_strokeColor))) { _strokeColor = _color; if (_strokeColor instanceof FSRGBColor) { FSRGBColor rgb = (FSRGBColor) _strokeColor; _cp.setStrokingColor(rgb.getRed(), rgb.getGreen(), rgb.getBlue()); } else if (_strokeColor instanceof FSCMYKColor) { FSCMYKColor cmyk = (FSCMYKColor) _strokeColor; _cp.setStrokingColor(cmyk.getCyan(), cmyk.getMagenta(), cmyk.getYellow(), cmyk.getBlack()); } else { assert(_strokeColor instanceof FSRGBColor || _strokeColor instanceof FSCMYKColor); } } }
private void ensureFillColor() { PageState state = currentState(); if (state.fillColor == null || !(state.fillColor.equals(_desiredPageState.fillColor))) { state.fillColor = _desiredPageState.fillColor; if (state.fillColor instanceof FSRGBColor) { FSRGBColor rgb = (FSRGBColor) state.fillColor; _cp.setFillColor(rgb.getRed(), rgb.getGreen(), rgb.getBlue()); } else if (state.fillColor instanceof FSCMYKColor) { FSCMYKColor cmyk = (FSCMYKColor) state.fillColor; _cp.setFillColor(cmyk.getCyan(), cmyk.getMagenta(), cmyk.getYellow(), cmyk.getBlack()); } else { assert(state.fillColor instanceof FSRGBColor || state.fillColor instanceof FSCMYKColor); } } }