IsFontEmbedded Method (GdPicturePDF)
In This Topic
Returns if the font, used in the currently loaded PDF document, according to the font index you have specified, is embedded. You can use the
GdPicturePDF.GetFontCount method to determine the number of all used fonts in the PDF document. The font index is simply an integer value from 1 to
GdPicturePDF.GetFontCount.
Font embedding means that a full copy of the entire character set of a font is stored in the PDF. A font program can be embedded in a PDF file as data contained in a PDF stream object (also called a font file). Such font programs are subject to copyright, and the copyright owner may impose conditions under which a font program can be used.
Syntax
'Declaration
Public Function IsFontEmbedded( _
ByVal As Integer _
) As Boolean
public bool IsFontEmbedded(
int
)
public function IsFontEmbedded(
: Integer
): Boolean;
public function IsFontEmbedded(
: int
) : boolean;
public: bool IsFontEmbedded(
int
)
public:
bool IsFontEmbedded(
int
)
Parameters
- FontIdx
- The font index. It must be a value from 1 to GdPicturePDF.GetFontCount.
Return Value
true if a font data (a font file) is embedded in the PDF document, otherwise false. The
GdPicturePDF.GetStat method can be subsequently used to determine if this method has been successful.
Example
How to find out the number of all fonts and their properties used in the PDF document.
Dim gdpicturePDF As New GdPicturePDF()
Dim status As GdPictureStatus = gdpicturePDF.LoadFromFile("test.pdf", False)
If status = GdPictureStatus.OK Then
Dim fontCount As Integer = gdpicturePDF.GetFontCount()
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then
Dim output As String = "The number of fonts used in this document is " + fontCount.ToString() + "." + vbCrLf + vbCrLf
For i As Integer = 1 To fontCount
output = output + i.ToString() + ". Font: "
Dim fontName As String = "", fontType As String = "", fontEncoding As String = ""
'Finding out the name of the used font.
fontName = gdpicturePDF.GetFontName(i)
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then
output = output + " Name = " + fontName
Else
output = output + " Name = Error (" + status.ToString() + ")"
End If
'Finding out the type of the used font.
fontType = gdpicturePDF.GetFontType(i)
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then
output = output + "; Type = " + fontType
Else
output = output + "; Type = Error (" + status.ToString() + ")"
End If
'Finding out the font encoding of the used font.
fontEncoding = gdpicturePDF.GetFontEncoding(i)
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then
output = output + "; Encoding = " + fontEncoding
Else
output = output + "; Encoding = Error (" + status.ToString() + ")"
End If
'Finding out if the used font is embedded.
Dim fontEmbedded As Boolean = gdpicturePDF.IsFontEmbedded(i)
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then
output = output + "; Embedded = " + fontEmbedded.ToString() + vbCrLf
Else
output = output + "; Embedded = Error (" + status.ToString() + ")" + vbCrLf
End If
Next
MessageBox.Show(output, "Example: IsFontEmbedded")
Else
MessageBox.Show("The GetFontCount() method has failed with the status: " + status.ToString(), "Example: IsFontEmbedded")
End If
Else
MessageBox.Show("The file can't be loaded.", "Example: IsFontEmbedded")
End If
gdpicturePDF.Dispose()
GdPicturePDF gdpicturePDF = new GdPicturePDF();
GdPictureStatus status = gdpicturePDF.LoadFromFile("test.pdf", false);
if (status == GdPictureStatus.OK)
{
int fontCount = gdpicturePDF.GetFontCount();
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK)
{
string output = "The number of fonts used in this document is " + fontCount.ToString() + ".\n\n";
for (int i = 1; i <= fontCount; i++)
{
output = output + i.ToString() + ". Font: ";
string fontName = "", fontType = "", fontEncoding = "";
//Finding out the name of the used font.
fontName = gdpicturePDF.GetFontName(i);
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK)
output = output + " Name = " + fontName;
else
output = output + " Name = Error (" + status.ToString() + ")";
//Finding out the type of the used font.
fontType = gdpicturePDF.GetFontType(i);
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK)
output = output + "; Type = " + fontType;
else
output = output + "; Type = Error (" + status.ToString() + ")";
//Finding out the font encoding of the used font.
fontEncoding = gdpicturePDF.GetFontEncoding(i);
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK)
output = output + "; Encoding = " + fontEncoding;
else
output = output + "; Encoding = Error (" + status.ToString() + ")";
//Finding out if the used font is embedded.
bool fontEmbedded = gdpicturePDF.IsFontEmbedded(i);
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK)
output = output + "; Embedded = " + fontEmbedded.ToString() + "\n";
else
output = output + "; Embedded = Error (" + status.ToString() + ")\n";
}
MessageBox.Show(output, "Example: IsFontEmbedded");
}
else
{
MessageBox.Show("The GetFontCount() method has failed with the status: " + status.ToString(), "Example: IsFontEmbedded");
}
}
else
{
MessageBox.Show("The file can't be loaded.", "Example: IsFontEmbedded");
}
gdpicturePDF.Dispose();
Example
How to find out the number of all fonts and their properties used in the PDF document.
Dim gdpicturePDF As New GdPicturePDF()
Dim status As GdPictureStatus = gdpicturePDF.LoadFromFile("test.pdf", False)
If status = GdPictureStatus.OK Then
Dim fontCount As Integer = gdpicturePDF.GetFontCount()
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then
Dim output As String = "The number of fonts used in this document is " + fontCount.ToString() + "." + vbCrLf + vbCrLf
For i As Integer = 1 To fontCount
output = output + i.ToString() + ". Font: "
Dim fontName As String = "", fontType As String = "", fontEncoding As String = ""
'Finding out the name of the used font.
fontName = gdpicturePDF.GetFontName(i)
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then
output = output + " Name = " + fontName
Else
output = output + " Name = Error (" + status.ToString() + ")"
End If
'Finding out the type of the used font.
fontType = gdpicturePDF.GetFontType(i)
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then
output = output + "; Type = " + fontType
Else
output = output + "; Type = Error (" + status.ToString() + ")"
End If
'Finding out the font encoding of the used font.
fontEncoding = gdpicturePDF.GetFontEncoding(i)
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then
output = output + "; Encoding = " + fontEncoding
Else
output = output + "; Encoding = Error (" + status.ToString() + ")"
End If
'Finding out if the used font is embedded.
Dim fontEmbedded As Boolean = gdpicturePDF.IsFontEmbedded(i)
status = gdpicturePDF.GetStat()
If status = GdPictureStatus.OK Then
output = output + "; Embedded = " + fontEmbedded.ToString() + vbCrLf
Else
output = output + "; Embedded = Error (" + status.ToString() + ")" + vbCrLf
End If
Next
MessageBox.Show(output, "Example: IsFontEmbedded")
Else
MessageBox.Show("The GetFontCount() method has failed with the status: " + status.ToString(), "Example: IsFontEmbedded")
End If
Else
MessageBox.Show("The file can't be loaded.", "Example: IsFontEmbedded")
End If
gdpicturePDF.Dispose()
GdPicturePDF gdpicturePDF = new GdPicturePDF();
GdPictureStatus status = gdpicturePDF.LoadFromFile("test.pdf", false);
if (status == GdPictureStatus.OK)
{
int fontCount = gdpicturePDF.GetFontCount();
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK)
{
string output = "The number of fonts used in this document is " + fontCount.ToString() + ".\n\n";
for (int i = 1; i <= fontCount; i++)
{
output = output + i.ToString() + ". Font: ";
string fontName = "", fontType = "", fontEncoding = "";
//Finding out the name of the used font.
fontName = gdpicturePDF.GetFontName(i);
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK)
output = output + " Name = " + fontName;
else
output = output + " Name = Error (" + status.ToString() + ")";
//Finding out the type of the used font.
fontType = gdpicturePDF.GetFontType(i);
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK)
output = output + "; Type = " + fontType;
else
output = output + "; Type = Error (" + status.ToString() + ")";
//Finding out the font encoding of the used font.
fontEncoding = gdpicturePDF.GetFontEncoding(i);
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK)
output = output + "; Encoding = " + fontEncoding;
else
output = output + "; Encoding = Error (" + status.ToString() + ")";
//Finding out if the used font is embedded.
bool fontEmbedded = gdpicturePDF.IsFontEmbedded(i);
status = gdpicturePDF.GetStat();
if (status == GdPictureStatus.OK)
output = output + "; Embedded = " + fontEmbedded.ToString() + "\n";
else
output = output + "; Embedded = Error (" + status.ToString() + ")\n";
}
MessageBox.Show(output, "Example: IsFontEmbedded");
}
else
{
MessageBox.Show("The GetFontCount() method has failed with the status: " + status.ToString(), "Example: IsFontEmbedded");
}
}
else
{
MessageBox.Show("The file can't be loaded.", "Example: IsFontEmbedded");
}
gdpicturePDF.Dispose();
See Also