Adds a font reference to the document.

 

   

Syntax
 

[C#]
virtual int AddFont(string name)
virtual int AddFont(string name, string language)
virtual int AddFont(string name, string language, bool vertical)

[Visual Basic]
Function AddFont(ByVal name As String) As Integer
Function AddFont(ByVal name As String, ByVal language As String) As Integer
Function AddFont(ByVal name As String, ByVal language As String, ByVal vertical As Boolean) As Integer

 

   

Params
 
Name Description
name The name of the font typeface.
language

The language type to use.

See the Fonts and Languages section for details on language types. The default language type is Latin.

vertical

Whether the text direction should be vertical.

See the Fonts and Languages section for details on writing directions. The default is false to indicate standard left to right layout.

return The Object ID of the newly added Font Object.

 

   

Notes
 

Adds a font to the document.

The font name and a description of the font style is held within the document. However the actual font itself is not added to the document. If you wish to embed a font you should use the EmbedFont method.

When a client opens the PDF Acrobat will attempt to find the exact same font on the client system. If the exact font is not available then a substitute font will be chosen using the font description to determine the best match.

The following fonts are guaranteed to be available on every system.

  • Times-Roman
  • Times-Bold
  • Times-Italic
  • Times-BoldItalic
  • Helvetica
  • Helvetica-Bold
  • Helvetica-Oblique
  • Helvetica-BoldOblique
  • Courier
  • Courier-Bold
  • Courier-Oblique
  • Courier-BoldOblique
  • Symbol
  • ZapfDingbats

Additionally you can add any TrueType, OpenType or Type 1 font that you have installed on your system. The name you should use is the one referenced in your fonts folder. For example.

  • Arial
  • Arial Black
  • Arial Black Italic
  • ...
  • Book Antiqua
  • Book Antiqua Bold
  • Book Antiqua Bold Italic
  • Book Antiqua Italic
  • ...
  • Venetian301BT
  • Venetian301BT Bold
  • ...

The AddFont function returns the Object ID of the newly added Font Object. Typically you will want to assign this return value to the document Font property using code of the form.

theDoc.Font = theDoc.AddFont("Courier")

If the specified font could not be found then you will get an Object ID of zero returned. You may wish to check for this possibility otherwise a default font will be used.

Fonts are cached so newly added fonts will not be available to ABCpdf until the application is restarted. If you need to dynamically load a font you can pass this method a path to your font file. This will add the font to the cache and make it available for use. You should not move, rename or delete a font file which has been dynamically loaded using this technique.

 

   

Example
 

The following code adds two pieces of text to a document. The first piece is in Times-Roman and the second in Helvetica-Bold.

[C#]
Doc theDoc = new Doc();
theDoc.FontSize = 48;
string theFont = "Times-Roman ";
theDoc.Font = theDoc.AddFont(theFont);
theDoc.AddText(theFont);
theFont = "Helvetica-Bold";
theDoc.Font = theDoc.AddFont(theFont);
theDoc.AddText(theFont);
theDoc.Save(Server.MapPath("docaddfont.pdf"));
theDoc.Clear();

[Visual Basic]
Dim theDoc As Doc = New Doc()
theDoc.FontSize = 48
Dim theFont As String = "Times-Roman "
theDoc.Font = theDoc.AddFont(theFont)
theDoc.AddText(theFont)
theFont = "Helvetica-Bold"
theDoc.Font = theDoc.AddFont(theFont)
theDoc.AddText(theFont)
theDoc.Save(Server.MapPath("docaddfont.pdf"))
theDoc.Clear()


docaddfont.pdf