Class PdfTrueTypeFont
Represents TrueType font.
Inherited Members
Namespace: Syncfusion.Pdf.Graphics
Assembly: Syncfusion.Pdf.UWP.dll
Syntax
public class PdfTrueTypeFont : PdfFont, IPdfWrapper, IPdfCache, IDisposable
Examples
//Create a new PDF document.
PdfDocument document = new PdfDocument();
//Add a page to the document.
PdfPage page = document.Pages.Add();
//Create PDF graphics for the page.
PdfGraphics graphics = page.Graphics;
//Create new system font.
Font sFont = new Font("Arial", 12, FontStyle.Regular);
//Create a new PDF true type font instance.
PdfFont font = new PdfTrueTypeFont(sFont);
//Draw string to PDF page.
graphics.DrawString("Hello World!", font, PdfBrushes.Black, PointF.Empty);
//Save the document.
document.Save("Output.pdf");
//Close the document.
document.Close(true);
'Create a new PDF document.
Dim document As New PdfDocument()
'Add a page to the document.
Dim page As PdfPage = document.Pages.Add()
'Create PDF graphics for the page.
Dim graphics As PdfGraphics = page.Graphics
'Create new system font.
Dim sFont As New Font("Arial", 12, FontStyle.Regular)
'Create a new PDF true type font instance.
Dim font As PdfFont = New PdfTrueTypeFont(sFont)
'Draw string to PDF page.
graphics.DrawString("Hello World!", font, PdfBrushes.Black, PointF.Empty)
'Save the document.
document.Save("Output.pdf")
'Close the document.
document.Close(True)
Constructors
PdfTrueTypeFont(PdfTrueTypeFont, Single)
Initializes a new instance of the PdfTrueTypeFont class with prototype and it's size
Declaration
public PdfTrueTypeFont(PdfTrueTypeFont prototype, float size)
Parameters
| Type | Name | Description |
|---|---|---|
| PdfTrueTypeFont | prototype | The PdfTrutypeFont using as a prototype. |
| System.Single | size | The size of the font. |
Examples
//Create a new PDF document.
PdfDocument document = new PdfDocument();
//Add a page to the document.
PdfPage page = document.Pages.Add();
//Create PDF graphics for the page.
PdfGraphics graphics = page.Graphics;
//Create a new PDF true type font instance.
PdfFont font = new PdfTrueTypeFont(new PdfTrueTypeFont(new Font("Arial",12,FontStyle.Regular)), 12);
//Draw string to PDF page.
graphics.DrawString("Hello World!", font, PdfBrushes.Black, PointF.Empty);
//Save the document.
document.Save("Output.pdf");
//Close the document.
document.Close(true);
'Create a new PDF document.
Dim document As New PdfDocument()
'Add a page to the document.
Dim page As PdfPage = document.Pages.Add()
'Create PDF graphics for the page.
Dim graphics As PdfGraphics = page.Graphics
'Create a new PDF true type font instance.
Dim font As PdfFont = New PdfTrueTypeFont(New PdfTrueTypeFont(New Font("Arial",12,FontStyle.Regular)), 12)
'Draw string to PDF page.
graphics.DrawString("Hello World!", font, PdfBrushes.Black, PointF.Empty)
'Save the document.
document.Save("Output.pdf")
'Close the document.
document.Close(True)
PdfTrueTypeFont(Stream, PdfFontSettings)
Initializes a new instance of the PdfTrueTypeFont class with the specified font stream and font settings options.
Declaration
public PdfTrueTypeFont(Stream fontStream, PdfFontSettings fontSettings)
Parameters
| Type | Name | Description |
|---|---|---|
| System.IO.Stream | fontStream | A Stream object that represents the font stream data. |
| PdfFontSettings | fontSettings | The option to manage settings for TrueType fonts. |
Examples
//Create a new PDF document.
PdfDocument document = new PdfDocument();
//Add a page to the document.
PdfPage page = document.Pages.Add();
//Create PDF graphics for the page.
PdfGraphics graphics = page.Graphics;
//Load the TrueType font from the local *.ttf file.
FileStream fontStream = new FileStream("Arial.ttf", FileMode.Open, FileAccess.Read);
// Initialize the PdfFontSettings
PdfFontSettings fontSettings = new PdfFontSettings(10, PdfFontStyle.Bold, true, true, true);
PdfFont pdfFont = new PdfTrueTypeFont(fontStream, fontSettings);
//Draw the text using this Turkish word.
graphics.DrawString("Arapça", pdfFont, PdfBrushes.Black, new PointF(0, 0));
//Save the document.
document.Save("Output.pdf");
//Close the document.
document.Close(true);
'Create a new PDF document.
Dim document As PdfDocument = New PdfDocument
'Add a page to the document.
Dim page As PdfPage = document.Pages.Add
'Create PDF graphics for the page.
Dim graphics As PdfGraphics = page.Graphics
'Use the fontStream installed in the machine.
Dim fontStream As FileStream = New FileStream("Arial.ttf", FileMode.Open, FileAccess.Read)
Dim fontSettings As PdfFontSettings = New PdfFontSettings(10, PdfFontStyle.Bold, true, true, true)
Dim pdfFont As PdfFont = New PdfTrueTypeFont(fontStream, fontSettings)
'Draw the text using this Turkish word.
graphics.DrawString("Arapça", pdfFont, PdfBrushes.Black, New PointF(0, 0))
'Save the document.
document.Save("Output.pdf")
'Close the document.
document.Close(true)
PdfTrueTypeFont(Stream, Boolean, PdfFontStyle, Single)
Initializes a new instance of the PdfTrueTypeFont class.
Declaration
public PdfTrueTypeFont(Stream fontStream, bool embed, PdfFontStyle style, float size)
Parameters
| Type | Name | Description |
|---|---|---|
| System.IO.Stream | fontStream | |
| System.Boolean | embed | Embedded. |
| PdfFontStyle | style | The style. |
| System.Single | size | The size. |
PdfTrueTypeFont(Stream, Single)
Initializes a new instance of the PdfTrueTypeFont class.
Declaration
public PdfTrueTypeFont(Stream fontStream, float size)
Parameters
| Type | Name | Description |
|---|---|---|
| System.IO.Stream | fontStream | |
| System.Single | size | The size. |
PdfTrueTypeFont(Stream, Single, PdfFontStyle)
Initializes a new instance of the PdfTrueTypeFont class.
Declaration
public PdfTrueTypeFont(Stream fontStream, float size, PdfFontStyle style)
Parameters
| Type | Name | Description |
|---|---|---|
| System.IO.Stream | fontStream | |
| System.Single | size | The size. |
| PdfFontStyle | style | The style. |
PdfTrueTypeFont(Stream, Single, Boolean, Boolean)
Initializes a new instance of the PdfTrueTypeFont class with the specified font stream, font size, and embedding options.
Declaration
public PdfTrueTypeFont(Stream fontStream, float size, bool embed, bool subset)
Parameters
| Type | Name | Description |
|---|---|---|
| System.IO.Stream | fontStream | A Stream object that represents the font stream data. |
| System.Single | size | |
| System.Boolean | embed | A boolean value that specifies whether to embed the font with the PDF document. |
| System.Boolean | subset | A boolean value that specifies whether to subset the font to only include the characters used in the document. |
Remarks
If the embed parameter is true, the font stream data will be embedded in the PDF document. This ensures that the font will be available for viewing and printing, even if the original font is not installed on the user's computer. If the subset parameter is true, only the characters used in the document will be included in the embedded font.This can reduce the size of the PDF document, but may also make it more difficult to edit the document in the future.
Examples
//Create a new PDF document.
PdfDocument document = new PdfDocument();
//Add a page to the document.
PdfPage page = document.Pages.Add();
//Create PDF graphics for the page.
PdfGraphics graphics = page.Graphics;
//Read a font file stream.
Stream fontStream = new MemoryStream(File.ReadAllBytes("arial.ttf"));
//Create a new PDF true type font instance.
PdfFont font = new PdfTrueTypeFont(fontStream, 12, true, false);
//Draw the text using this Turkish word.
graphics.DrawString("Arapça", font, PdfBrushes.Black, PointF.Empty);
//Save the document.
document.Save("Output.pdf");
//Close the document.
document.Close(true);
'Create a new PDF document.
Dim document As New PdfDocument()
'Add a page to the document.
Dim page As PdfPage = document.Pages.Add()
'Create PDF graphics for the page.
Dim graphics As PdfGraphics = page.Graphics
'Read a font file stream.
Dim fontStream As Stream = New MemoryStream(File.ReadAllBytes("arial.ttf"))
'Create a new PDF true type font instance.
Dim font As PdfFont = New PdfTrueTypeFont(fontStream, 12, true, false)
'Draw the text using this Turkish word.
graphics.DrawString("Arapça", font, PdfBrushes.Black, PointF.Empty)
'Save the document.
document.Save("Output.pdf")
'Close the document.
document.Close(True)
Properties
Unicode
Gets a value indicating whether this PdfTrueTypeFont is Unicode enabled (Read only).
Declaration
public bool Unicode { get; }
Property Value
| Type | Description |
|---|---|
| System.Boolean |
|
Examples
//Create a new PDF document.
PdfDocument document = new PdfDocument();
//Add a page to the document.
PdfPage page = document.Pages.Add();
//Create PDF graphics for the page.
PdfGraphics graphics = page.Graphics;
//Create new system font.
Font sFont = new Font("Arial", 12, FontStyle.Regular);
//Create a new PDF true type font instance.
PdfTrueTypeFont font = new PdfTrueTypeFont(sFont, 12, true);
//Check unicode support.
bool isUnicode = font.Unicode;
//Draw string to PDF page.
graphics.DrawString("Unicode Font = " + isUnicode, font, PdfBrushes.Black, PointF.Empty);
//Save the document.
document.Save("Output.pdf");
//Close the document.
document.Close(true);
'Create a new PDF document.
Dim document As New PdfDocument()
'Add a page to the document.
Dim page As PdfPage = document.Pages.Add()
'Create PDF graphics for the page.
Dim graphics As PdfGraphics = page.Graphics
'Create new system font.
Dim sFont As New Font("Arial", 12, FontStyle.Regular)
'Create a new PDF true type font instance.
Dim font As PdfTrueTypeFont = New PdfTrueTypeFont(sFont, 12, True)
'Check unicode support.
Dim isUnicode As Boolean = font.Unicode
'Draw string to PDF page.
graphics.DrawString("Unicode Font = " + isUnicode, font, PdfBrushes.Black, PointF.Empty)
'Save the document.
document.Save("Output.pdf")
'Close the document.
document.Close(True)
Methods
Dispose()
Releases all resources of the font.
Declaration
public void Dispose()
Remarks
Don't dispose the font until the corresponding document is closed.
EqualsToFont(PdfFont)
Checks whether fonts are equals.
Declaration
protected override bool EqualsToFont(PdfFont font)
Parameters
| Type | Name | Description |
|---|---|---|
| PdfFont | font | Font to compare. |
Returns
| Type | Description |
|---|---|
| System.Boolean | True if fonts are equal, False otherwise. |
Overrides
Finalize()
Releases unmanaged resources and performs other cleanup operations before the PdfTrueTypeFont is reclaimed by garbage collection.
Declaration
protected override void Finalize()
GetCharWidth(Char, PdfStringFormat)
Calculates the width of a specified character, taking into account the font size and formatting options.
Declaration
protected override float GetCharWidth(char charCode, PdfStringFormat format)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Char | charCode | The character for which to calculate the width. |
| PdfStringFormat | format | The formatting options to apply, such as font size and style. Can be null to use default formatting. |
Returns
| Type | Description |
|---|---|
| System.Single | The width of the specified character, adjusted for the font size and formatting. |
Overrides
Remarks
The calculated width is influenced by the internal font metrics and the specified
formatting options. If format is null, default font size and style are
used.
GetLineWidth(String, PdfStringFormat)
Calculates the width of a text line based on the specified string and formatting options.
Declaration
protected override float GetLineWidth(string line, PdfStringFormat format)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | line | The text line whose width is to be calculated. |
| PdfStringFormat | format | The PdfStringFormat object that specifies text formatting options, such as text direction and alignment. This parameter can be null to use default formatting. |
Returns
| Type | Description |
|---|---|
| System.Single | The width of the specified text line, adjusted for the provided formatting options and font settings. |
Overrides
Remarks
The calculated width takes into account the font metrics, text direction, and any
additional formatting settings specified in the format parameter. If the text is Unicode
and specific formatting options are applied, the method ensures proper handling of text direction and
alignment.