Package com.openhtmltopdf.render
Class AbstractOutputDevice
- java.lang.Object
-
- com.openhtmltopdf.render.AbstractOutputDevice
-
- All Implemented Interfaces:
OutputDevice
- Direct Known Subclasses:
Java2DOutputDevice,PdfBoxFastOutputDevice,PdfBoxSlowOutputDevice
public abstract class AbstractOutputDevice extends java.lang.Object implements OutputDevice
An abstract implementation of anOutputDevice. It provides complete implementations for manyOutputDevicemethods.
-
-
Field Summary
Fields Modifier and Type Field Description private FontSpecification_fontSpec
-
Constructor Summary
Constructors Constructor Description AbstractOutputDevice()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description private intadjustTo(int target, int current, int imageDim)private intcalcBackgroundSizeLength(CssContext c, CalculatedStyle style, PropertyValue value, float boundsDim)private java.awt.DimensioncalcInitialXYOff(CalculatedStyle.BackgroundContainer bgImage, java.awt.Rectangle bgImageContainer, BorderPropertySet border, CalculatedStyle style, RenderingContext c)private intcalcOffset(CssContext c, CalculatedStyle style, PropertyValue value, float boundsDim, float imageDim)private voiddrawBgImage(RenderingContext c, CalculatedStyle style, java.awt.Rectangle backgroundBounds, java.awt.Rectangle bgImageContainer, BorderPropertySet border, FSImage backgroundImage, CalculatedStyle.BackgroundContainer bgImage)voiddrawDebugOutline(RenderingContext c, Box box, FSColor color)private voiddrawFontMetrics(RenderingContext c, InlineText inlineText)protected abstract voiddrawLine(int x1, int y1, int x2, int y2)voiddrawText(RenderingContext c, InlineText inlineText)voiddrawTextDecoration(RenderingContext c, InlineLayoutBox iB, TextDecoration decoration)voiddrawTextDecoration(RenderingContext c, LineBox lineBox)private FSImagegetBackgroundImage(PropertyValue bgImage, RenderingContext c)FontSpecificationgetFontSpecification()Gets the FontSpecification for this AbstractOutputDevice.booleanisPDF()voidpaintBackground(RenderingContext c, CalculatedStyle style, java.awt.Rectangle bounds, java.awt.Rectangle bgImageContainer, BorderPropertySet border)voidpaintBackground(RenderingContext c, Box box)private voidpaintBackground0(RenderingContext c, CalculatedStyle style, java.awt.Rectangle backgroundBounds, java.awt.Rectangle bgImageContainer, BorderPropertySet border)voidpaintBorder(RenderingContext c, CalculatedStyle style, java.awt.Rectangle edge, int sides)voidpaintBorder(RenderingContext c, Box box)voidpaintCollapsedBorder(RenderingContext c, BorderPropertySet border, java.awt.Rectangle bounds, int side)private voidpaintHorizontalBand(FSImage image, int left, int top, int right, boolean interpolate)private voidpaintTiles(FSImage image, int left, int top, int right, int bottom, boolean interpolate)private voidpaintVerticalBand(FSImage image, int left, int top, int bottom, boolean interpolate)private voidscaleBackgroundImage(CssContext c, CalculatedStyle style, java.awt.Rectangle backgroundContainer, FSImage image, CalculatedStyle.BackgroundContainer bgImage)voidsetFontSpecification(FontSpecification fs)Sets the FontSpecification for this AbstractOutputDevice.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.openhtmltopdf.extend.OutputDevice
clip, draw, drawBorderLine, drawImage, drawLinearGradient, drawOval, drawRect, drawSelection, drawWithGraphics, endStructure, fill, fillOval, fillRect, getAbsoluteTransformOriginX, getAbsoluteTransformOriginY, getClip, getRenderingHint, getStroke, isFastRenderer, isSupportsCMYKColors, isSupportsSelection, paintReplacedElement, popClip, popTransformLayer, popTransforms, pushClip, pushTransformLayer, pushTransforms, setClip, setColor, setFont, setPaint, setRenderingHint, setStroke, startStructure, translate
-
-
-
-
Field Detail
-
_fontSpec
private FontSpecification _fontSpec
-
-
Method Detail
-
drawLine
protected abstract void drawLine(int x1, int y1, int x2, int y2)
-
drawText
public void drawText(RenderingContext c, InlineText inlineText)
- Specified by:
drawTextin interfaceOutputDevice
-
drawFontMetrics
private void drawFontMetrics(RenderingContext c, InlineText inlineText)
-
drawTextDecoration
public void drawTextDecoration(RenderingContext c, InlineLayoutBox iB, TextDecoration decoration)
- Specified by:
drawTextDecorationin interfaceOutputDevice
-
drawTextDecoration
public void drawTextDecoration(RenderingContext c, LineBox lineBox)
- Specified by:
drawTextDecorationin interfaceOutputDevice
-
drawDebugOutline
public void drawDebugOutline(RenderingContext c, Box box, FSColor color)
- Specified by:
drawDebugOutlinein interfaceOutputDevice
-
paintCollapsedBorder
public void paintCollapsedBorder(RenderingContext c, BorderPropertySet border, java.awt.Rectangle bounds, int side)
- Specified by:
paintCollapsedBorderin interfaceOutputDevice
-
paintBorder
public void paintBorder(RenderingContext c, Box box)
- Specified by:
paintBorderin interfaceOutputDevice
-
paintBorder
public void paintBorder(RenderingContext c, CalculatedStyle style, java.awt.Rectangle edge, int sides)
- Specified by:
paintBorderin interfaceOutputDevice
-
getBackgroundImage
private FSImage getBackgroundImage(PropertyValue bgImage, RenderingContext c)
-
paintBackground
public void paintBackground(RenderingContext c, CalculatedStyle style, java.awt.Rectangle bounds, java.awt.Rectangle bgImageContainer, BorderPropertySet border)
- Specified by:
paintBackgroundin interfaceOutputDevice
-
paintBackground
public void paintBackground(RenderingContext c, Box box)
- Specified by:
paintBackgroundin interfaceOutputDevice
-
paintBackground0
private void paintBackground0(RenderingContext c, CalculatedStyle style, java.awt.Rectangle backgroundBounds, java.awt.Rectangle bgImageContainer, BorderPropertySet border)
-
calcInitialXYOff
private java.awt.Dimension calcInitialXYOff(CalculatedStyle.BackgroundContainer bgImage, java.awt.Rectangle bgImageContainer, BorderPropertySet border, CalculatedStyle style, RenderingContext c)
-
drawBgImage
private void drawBgImage(RenderingContext c, CalculatedStyle style, java.awt.Rectangle backgroundBounds, java.awt.Rectangle bgImageContainer, BorderPropertySet border, FSImage backgroundImage, CalculatedStyle.BackgroundContainer bgImage)
-
adjustTo
private int adjustTo(int target, int current, int imageDim)
-
paintTiles
private void paintTiles(FSImage image, int left, int top, int right, int bottom, boolean interpolate)
-
paintVerticalBand
private void paintVerticalBand(FSImage image, int left, int top, int bottom, boolean interpolate)
-
paintHorizontalBand
private void paintHorizontalBand(FSImage image, int left, int top, int right, boolean interpolate)
-
calcOffset
private int calcOffset(CssContext c, CalculatedStyle style, PropertyValue value, float boundsDim, float imageDim)
-
scaleBackgroundImage
private void scaleBackgroundImage(CssContext c, CalculatedStyle style, java.awt.Rectangle backgroundContainer, FSImage image, CalculatedStyle.BackgroundContainer bgImage)
-
calcBackgroundSizeLength
private int calcBackgroundSizeLength(CssContext c, CalculatedStyle style, PropertyValue value, float boundsDim)
-
getFontSpecification
public FontSpecification getFontSpecification()
Gets the FontSpecification for this AbstractOutputDevice.- Returns:
- current FontSpecification.
-
setFontSpecification
public void setFontSpecification(FontSpecification fs)
Sets the FontSpecification for this AbstractOutputDevice.- Parameters:
fs- current FontSpecification.
-
isPDF
public boolean isPDF()
- Specified by:
isPDFin interfaceOutputDevice
-
-