Class AdvancedTextRenderer
Advanced text renderer is used to perform the following tasks:
- draw justified text, text with custom line height, text containing html tags;
- calculate text height, get part of text that does not fit in the display rectangle;
- get paragraphs, lines, words and char sequence to perform accurate export to such
formats as PDF, TXT, RTF
Inheritance
System.Object
AdvancedTextRenderer
Inherited Members
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Assembly: FastReport.OpenSource.dll
Syntax
public class AdvancedTextRenderer
Examples
Here is how one may operate the renderer items:
foreach (AdvancedTextRenderer.Paragraph paragraph in renderer.Paragraphs)
{
foreach (AdvancedTextRenderer.Line line in paragraph.Lines)
{
foreach (AdvancedTextRenderer.Word word in line.Words)
{
if (renderer.HtmlTags)
{
foreach (AdvancedTextRenderer.Run run in word.Runs)
{
using (Font f = run.GetFont())
using (Brush b = run.GetBrush())
{
g.DrawString(run.Text, f, b, run.Left, run.Top, renderer.Format);
}
}
}
else
{
g.DrawString(word.Text, renderer.Font, renderer.Brush, word.Left, word.Top, renderer.Format);
}
}
}
}
Constructors
AdvancedTextRenderer(String, Graphics, Font, Brush, Pen, RectangleF, StringFormat, HorzAlign, VertAlign, Single, Int32, Single, Boolean, Boolean, Boolean, Boolean, Single, Single, InlineImageCache)
Declaration
public AdvancedTextRenderer(string text, Graphics g, Font font, Brush brush, Pen outlinePen, RectangleF rect, StringFormat format, HorzAlign horzAlign, VertAlign vertAlign, float lineHeight, int angle, float widthRatio, bool forceJustify, bool wysiwyg, bool htmlTags, bool pdfMode, float scale, float fontScale, InlineImageCache cache)
Parameters
| Type |
Name |
Description |
| System.String |
text |
|
| Graphics |
g |
|
| Font |
font |
|
| Brush |
brush |
|
| Pen |
outlinePen |
|
| RectangleF |
rect |
|
| StringFormat |
format |
|
| HorzAlign |
horzAlign |
|
| VertAlign |
vertAlign |
|
| System.Single |
lineHeight |
|
| System.Int32 |
angle |
|
| System.Single |
widthRatio |
|
| System.Boolean |
forceJustify |
|
| System.Boolean |
wysiwyg |
|
| System.Boolean |
htmlTags |
|
| System.Boolean |
pdfMode |
|
| System.Single |
scale |
|
| System.Single |
fontScale |
|
| InlineImageCache |
cache |
|
Properties
Angle
Declaration
public int Angle { get; }
Property Value
| Type |
Description |
| System.Int32 |
|
Brush
Declaration
public Brush Brush { get; }
Property Value
BrushColor
Declaration
public Color BrushColor { get; }
Property Value
Cache
Declaration
public InlineImageCache Cache { get; }
Property Value
DisplayRect
Declaration
public RectangleF DisplayRect { get; }
Property Value
| Type |
Description |
| RectangleF |
|
Font
Declaration
public Font Font { get; }
Property Value
FontLineHeight
Declaration
public float FontLineHeight { get; }
Property Value
| Type |
Description |
| System.Single |
|
FontScale
Declaration
public float FontScale { get; set; }
Property Value
| Type |
Description |
| System.Single |
|
ForceJustify
Declaration
public bool ForceJustify { get; }
Property Value
| Type |
Description |
| System.Boolean |
|
Format
Declaration
public StringFormat Format { get; }
Property Value
| Type |
Description |
| StringFormat |
|
Graphics
Declaration
public Graphics Graphics { get; }
Property Value
| Type |
Description |
| Graphics |
|
HorzAlign
Declaration
public HorzAlign HorzAlign { get; }
Property Value
HtmlTags
Declaration
public bool HtmlTags { get; }
Property Value
| Type |
Description |
| System.Boolean |
|
LineHeight
Declaration
public float LineHeight { get; }
Property Value
| Type |
Description |
| System.Single |
|
OutlinePen
Declaration
public Pen OutlinePen { get; }
Property Value
Paragraphs
Declaration
public List<AdvancedTextRenderer.Paragraph> Paragraphs { get; }
Property Value
PDFMode
Declaration
public bool PDFMode { get; }
Property Value
| Type |
Description |
| System.Boolean |
|
RightToLeft
Declaration
public bool RightToLeft { get; }
Property Value
| Type |
Description |
| System.Boolean |
|
Scale
Declaration
public float Scale { get; set; }
Property Value
| Type |
Description |
| System.Single |
|
TabOffset
Declaration
public float TabOffset { get; }
Property Value
| Type |
Description |
| System.Single |
|
TabSize
Declaration
public float TabSize { get; }
Property Value
| Type |
Description |
| System.Single |
|
VertAlign
Declaration
public VertAlign VertAlign { get; }
Property Value
WidthRatio
Declaration
public float WidthRatio { get; }
Property Value
| Type |
Description |
| System.Single |
|
WordWrap
Declaration
public bool WordWrap { get; }
Property Value
| Type |
Description |
| System.Boolean |
|
Wysiwyg
Declaration
public bool Wysiwyg { get; }
Property Value
| Type |
Description |
| System.Boolean |
|
Methods
CalcHeight()
Declaration
public float CalcHeight()
Returns
| Type |
Description |
| System.Single |
|
CalcHeight(out Int32, out AdvancedTextRenderer.StyleDescriptor)
Declaration
public float CalcHeight(out int charsFit, out AdvancedTextRenderer.StyleDescriptor style)
Parameters
Returns
| Type |
Description |
| System.Single |
|
CalcWidth()
Declaration
Returns
| Type |
Description |
| System.Single |
|
Draw()
Declaration