public class SharedContext extends Object
| Modifier and Type | Field and Description |
|---|---|
String |
_preferredDocumentBuilderFactoryImplementationClass |
String |
_preferredTransformerFactoryImplementationClass |
protected FSCanvas |
canvas |
protected StyleReference |
css |
protected boolean |
debug_draw_boxes |
protected boolean |
debug_draw_font_metrics |
protected boolean |
debug_draw_inline_boxes |
protected boolean |
debug_draw_line_boxes |
protected FontResolver |
fontResolver |
| Constructor and Description |
|---|
SharedContext() |
SharedContext(UserAgentCallback uac,
FontResolver fr,
ReplacedElementFactory ref,
TextRenderer tr,
float dpi)
Deprecated.
This stuff should go in the renderers of a specific device.
|
| Modifier and Type | Method and Description |
|---|---|
void |
addBoxId(String id,
Box box) |
boolean |
debugDrawBoxes() |
boolean |
debugDrawFontMetrics() |
boolean |
debugDrawInlineBoxes() |
boolean |
debugDrawLineBoxes() |
void |
flushFonts() |
String |
getBaseURL()
Gets the baseURL attribute of the RenderingContext object
|
Box |
getBoxById(String id) |
FSCanvas |
getCanvas() |
FSTextBreaker |
getCharacterBreaker() |
StyleReference |
getCss() |
Float |
getDefaultPageHeight()
Stores a default page height.
|
Float |
getDefaultPageWidth()
Stores a default page width.
|
int |
getDotsPerPixel()
Get the internal dots measurement per CSS pixel.
|
float |
getDPI()
Gets the dPI attribute of the RenderingContext object
|
Rectangle |
getFixedRectangle() |
FSFont |
getFont(FontSpecification spec) |
FontResolver |
getFontResolver()
Gets the fontResolver attribute of the Context object
|
Map<String,Box> |
getIdMap() |
FSTextBreaker |
getLineBreaker() |
String |
getMedia()
The media for this context
|
float |
getMmPerDotParent()
Gets the dPI attribute in a more useful form of the RenderingContext object
|
NamespaceHandler |
getNamespaceHandler() |
ReplacedElementFactory |
getReplacedElementFactory() |
String |
getReplacementText()
The replacement text to be used if a character cannot be
renderered by the current or fallback fonts.
|
CalculatedStyle |
getStyle(Element e) |
CalculatedStyle |
getStyle(Element e,
boolean restyle) |
TextRenderer |
getTextRenderer() |
UserAgentCallback |
getUac()
Deprecated.
Use getUserAgentCallback instead for clearer code.
|
FSTextTransformer |
getUnicodeToLowerTransformer() |
FSTextTransformer |
getUnicodeToTitleTransformer() |
FSTextTransformer |
getUnicodeToUpperTransformer() |
UserAgentCallback |
getUserAgentCallback() |
float |
getXHeight(FontContext fontContext,
FontSpecification fs) |
boolean |
isDefaultPageSizeInches()
If not, consider it as mm.
|
boolean |
isInteractive() |
boolean |
isPaged()
Returns true if the currently set media type is paged.
|
boolean |
isPrint() |
LayoutContext |
newLayoutContextInstance() |
RenderingContext |
newRenderingContextInstance() |
void |
registerWithThread()
This registers the shared context with a thread local so it
can be used anywhere.
|
void |
removeBoxId(String id) |
void |
removeElementReferences(Element e) |
void |
removeFromThread()
This removes the shared context from a thread local to avoid memory leaks.
|
void |
reset() |
void |
setBaseURL(String url)
Sets the baseURL attribute of the RenderingContext object
|
void |
setCanvas(FSCanvas canvas) |
void |
setCharacterBreaker(FSTextBreaker breaker) |
void |
setCss(StyleReference css) |
void |
setDebug_draw_boxes(boolean debug_draw_boxes) |
void |
setDebug_draw_font_metrics(boolean debug_draw_font_metrics) |
void |
setDebug_draw_inline_boxes(boolean debug_draw_inline_boxes) |
void |
setDebug_draw_line_boxes(boolean debug_draw_line_boxes) |
void |
setDefaultPageSize(Float pageWidth,
Float pageHeight,
boolean isInches)
Set the default page dimensions.
|
void |
setDotsPerPixel(int dotsPerPixel)
Set the internal dots measurement per CSS pixel.
|
void |
setDPI(float dpi)
Sets the effective DPI (Dots Per Inch) of the screen.
|
void |
setFontMapping(String name,
Font font)
Deprecated.
Definitely shouldn't use this method as it only applies for
Java2D font resolver. Instead call getFontResolver, cast and use font adding
methods on that.
|
void |
setFontResolver(FontResolver resolver) |
void |
setInteractive(boolean interactive) |
void |
setLineBreaker(FSTextBreaker breaker) |
void |
setMedia(String media)
Set the current media type.
|
void |
setNamespaceHandler(NamespaceHandler nh) |
void |
setPrint(boolean print) |
void |
setReplacedElementFactory(ReplacedElementFactory ref) |
void |
setReplacementText(String replacement) |
void |
setTempCanvas(Rectangle rect) |
void |
setTextRenderer(TextRenderer textRenderer)
Sets the textRenderer attribute of the RenderingContext object
|
void |
setUnicodeToLowerTransformer(FSTextTransformer tr) |
void |
setUnicodeToTitleTransformer(FSTextTransformer tr) |
void |
setUnicodeToUpperTransformer(FSTextTransformer tr) |
void |
setUserAgentCallback(UserAgentCallback userAgentCallback) |
protected FontResolver fontResolver
protected StyleReference css
protected boolean debug_draw_boxes
protected boolean debug_draw_line_boxes
protected boolean debug_draw_inline_boxes
protected boolean debug_draw_font_metrics
protected FSCanvas canvas
public String _preferredTransformerFactoryImplementationClass
public String _preferredDocumentBuilderFactoryImplementationClass
public SharedContext()
@Deprecated public SharedContext(UserAgentCallback uac, FontResolver fr, ReplacedElementFactory ref, TextRenderer tr, float dpi)
public LayoutContext newLayoutContextInstance()
public RenderingContext newRenderingContextInstance()
public FontResolver getFontResolver()
public void flushFonts()
public String getMedia()
public TextRenderer getTextRenderer()
public boolean debugDrawBoxes()
public boolean debugDrawLineBoxes()
public boolean debugDrawInlineBoxes()
public boolean debugDrawFontMetrics()
public void setDebug_draw_boxes(boolean debug_draw_boxes)
public void setDebug_draw_line_boxes(boolean debug_draw_line_boxes)
public void setDebug_draw_inline_boxes(boolean debug_draw_inline_boxes)
public void setDebug_draw_font_metrics(boolean debug_draw_font_metrics)
public StyleReference getCss()
public void setCss(StyleReference css)
public FSCanvas getCanvas()
public void setCanvas(FSCanvas canvas)
public void setTempCanvas(Rectangle rect)
public Rectangle getFixedRectangle()
public void setNamespaceHandler(NamespaceHandler nh)
public NamespaceHandler getNamespaceHandler()
public void removeBoxId(String id)
public void setTextRenderer(TextRenderer textRenderer)
textRenderer - The new textRenderer valuepublic void setMedia(String media)
media - The new media value@Deprecated public UserAgentCallback getUac()
public UserAgentCallback getUserAgentCallback()
public void setUserAgentCallback(UserAgentCallback userAgentCallback)
public float getDPI()
public void setDPI(float dpi)
Toolkit.getDefaultToolkit().getScreenResolution()
You can override the value if you want to scale EVERYTHING.dpi - The new dPI valuepublic float getMmPerDotParent()
public FSFont getFont(FontSpecification spec)
public float getXHeight(FontContext fontContext, FontSpecification fs)
public String getBaseURL()
public void setBaseURL(String url)
url - The new baseURL valuepublic boolean isPaged()
public boolean isInteractive()
public void setInteractive(boolean interactive)
public boolean isPrint()
public void setPrint(boolean print)
@Deprecated public void setFontMapping(String name, Font font)
Font font = Font.createFont(Font.TRUETYPE_FONT,
new FileInputStream("cool.ttf");
setFontMapping("CoolFont", font);
You could then put the following css in your page
p { font-family: CoolFont Arial sans-serif; }
You can also override existing font mappings, like replacing Arial with
Helvetica.name - The new font namefont - The actual Font to mappublic void setFontResolver(FontResolver resolver)
public int getDotsPerPixel()
public void setDotsPerPixel(int dotsPerPixel)
dotsPerPixel - public CalculatedStyle getStyle(Element e)
public CalculatedStyle getStyle(Element e, boolean restyle)
public void reset()
public ReplacedElementFactory getReplacedElementFactory()
public void setReplacedElementFactory(ReplacedElementFactory ref)
public void removeElementReferences(Element e)
public Float getDefaultPageWidth()
#isDefaultPageSizeInches()}public Float getDefaultPageHeight()
#isDefaultPageSizeInches()}public boolean isDefaultPageSizeInches()
public String getReplacementText()
public void setReplacementText(String replacement)
public void setDefaultPageSize(Float pageWidth, Float pageHeight, boolean isInches)
pageWidth - pageHeight - public FSTextBreaker getLineBreaker()
public void setLineBreaker(FSTextBreaker breaker)
public FSTextBreaker getCharacterBreaker()
public void setCharacterBreaker(FSTextBreaker breaker)
public void registerWithThread()
removeFromThread() when the run is complete.public void removeFromThread()
public FSTextTransformer getUnicodeToLowerTransformer()
public FSTextTransformer getUnicodeToUpperTransformer()
public FSTextTransformer getUnicodeToTitleTransformer()
public void setUnicodeToLowerTransformer(FSTextTransformer tr)
public void setUnicodeToUpperTransformer(FSTextTransformer tr)
public void setUnicodeToTitleTransformer(FSTextTransformer tr)
Copyright © 2018. All rights reserved.