Class RenderingContext

java.lang.Object
com.openhtmltopdf.render.RenderingContext
All Implemented Interfaces:
CssContext, Cloneable

public class RenderingContext extends Object implements CssContext, Cloneable
Supplies information about the context in which rendering will take place
  • Field Details

    • sharedContext

      protected final SharedContext sharedContext
    • outputDevice

      private OutputDevice outputDevice
    • fontContext

      private FontContext fontContext
    • pageCount

      private int pageCount
    • pageNo

      private int pageNo
    • page

      private PageBox page
    • shadowPageNumber

      private int shadowPageNumber
    • rootLayer

      private Layer rootLayer
    • initialPageNo

      private int initialPageNo
    • isFastRenderer

      private boolean isFastRenderer
    • inPageMargins

      private boolean inPageMargins
    • _isInFloatBottom

      private boolean _isInFloatBottom
    • _bidi

      private BidiReorderer _bidi
  • Constructor Details

    • RenderingContext

      public RenderingContext(SharedContext sharedContext)
      needs a new instance every run
  • Method Details

    • isFastRenderer

      public boolean isFastRenderer()
    • setFastRenderer

      public void setFastRenderer(boolean isFast)
    • setBaseURL

      public void setBaseURL(String url)
    • getUac

      public UserAgentCallback getUac()
    • getBaseURL

      public String getBaseURL()
    • getDPI

      public float getDPI()
    • getMmPerDot

      public float getMmPerDot()
      Specified by:
      getMmPerDot in interface CssContext
    • getDotsPerPixel

      public int getDotsPerPixel()
      Specified by:
      getDotsPerPixel in interface CssContext
    • getFontSize2D

      public float getFontSize2D(FontSpecification font)
      Specified by:
      getFontSize2D in interface CssContext
    • getXHeight

      public float getXHeight(FontSpecification parentFont)
      Specified by:
      getXHeight in interface CssContext
    • getTextRenderer

      public TextRenderer getTextRenderer()
      Specified by:
      getTextRenderer in interface CssContext
    • setBidiReorderer

      public void setBidiReorderer(BidiReorderer bidi)
    • getBidiReorderer

      public BidiReorderer getBidiReorderer()
    • isPaged

      public boolean isPaged()
      Returns true if the currently set media type is paged. Currently returns true only for print , projection , and embossed , handheld , and tv . See the media section of the CSS 2.1 spec for more information on media types.
      Returns:
      The paged value
    • getFontResolver

      public FontResolver getFontResolver()
    • getFont

      public FSFont getFont(FontSpecification font)
      Specified by:
      getFont in interface CssContext
    • getCanvas

      public FSCanvas getCanvas()
    • getFixedRectangle

      public Rectangle getFixedRectangle(boolean excludeFloatBottomArea)
      Get the document (for non-paged docs) or page rect where fixed position boxes should be layed out. Generally we want to set excludeFloatBottomArea true so fixed content doesn't sit above footnotes.
    • getViewportRectangle

      public Rectangle getViewportRectangle()
      Get the viewport rect, for painting the body or html tag background.
    • debugDrawBoxes

      public boolean debugDrawBoxes()
    • debugDrawLineBoxes

      public boolean debugDrawLineBoxes()
    • debugDrawInlineBoxes

      public boolean debugDrawInlineBoxes()
    • debugDrawFontMetrics

      public boolean debugDrawFontMetrics()
    • isInteractive

      public boolean isInteractive()
    • isPrint

      public boolean isPrint()
    • getOutputDevice

      public OutputDevice getOutputDevice()
    • setOutputDevice

      public void setOutputDevice(OutputDevice outputDevice)
    • getFontContext

      public FontContext getFontContext()
      Specified by:
      getFontContext in interface CssContext
    • setFontContext

      public void setFontContext(FontContext fontContext)
    • setPage

      public void setPage(int pageNo, PageBox page)
    • getPageCount

      public int getPageCount()
    • setPageCount

      public void setPageCount(int pageCount)
    • getPage

      public PageBox getPage()
    • getPageNo

      public int getPageNo()
    • getCss

      public StyleReference getCss()
      Specified by:
      getCss in interface CssContext
    • getFSFontMetrics

      public FSFontMetrics getFSFontMetrics(FSFont font)
      Specified by:
      getFSFontMetrics in interface CssContext
    • getRootLayer

      public Layer getRootLayer()
    • setRootLayer

      public void setRootLayer(Layer rootLayer)
    • getInitialPageNo

      public int getInitialPageNo()
    • setInitialPageNo

      public void setInitialPageNo(int initialPageNo)
    • getBoxById

      public Box getBoxById(String id)
    • setShadowPageNumber

      public void setShadowPageNumber(int shadow)
    • getShadowPageNumber

      public int getShadowPageNumber()
      Returns:
      overflow page number or -1 if this is not an overflow page.
    • setInPageMargins

      public void setInPageMargins(boolean inMargin)
    • isInPageMargins

      public boolean isInPageMargins()
    • clone

      public Object clone()
      Overrides:
      clone in class Object
    • setIsInFloatBottom

      public void setIsInFloatBottom(boolean inFloatBottom)
    • isInFloatBottom

      public boolean isInFloatBottom()
      Returns true if we are laying out the footnote area rather than general content.
      Specified by:
      isInFloatBottom in interface CssContext