c# convert pdf to tiff using pdfsharp : Add signature to preview pdf control SDK platform web page wpf azure web browser pdf_reference_1-741-part808

Introduction to Font Data Structures
SECTION 5.4
411
ports two classes of font-related objects, called CIDFonts and CMaps, described in 
Section 5.6.1, “CID-Keyed Fonts Overview.” CIDFonts are listed in Table 5.7 be-
cause, like fonts, they are collections of glyphs; however, a CIDFont is never used 
directly but only as a component of a Type 0 font. 
TABLE 5.7   Font types
For all font types, the term font dictionary refers to a PDF dictionary containing 
information about the font; likewise, a CIDFont dictionary contains information 
about a CIDFont. Except for Type 3, this dictionary is distinct from the font pro-
gram that defines the font’s glyphs. That font program may be embedded in the 
PDF file as a stream object or be obtained from some external source. 
Note: This terminology differs from that used in the PostScript language. In Post-
Script, a font dictionary is a PostScript data structure that is created as a direct re-
sult of interpreting a font program. In PDF, a font program is always treated as if it 
were a separate file, even if its contents are embedded in the PDF file. The font pro-
gram  is interpreted by a specialized font interpreter when necessary; its contents 
never materialize as PDF objects. 
TYPE
SUBTYPE VALUE
DESCRIPTION
Type 0
Type0
(PDF 1.2) A composite font—a font composed of glyphs from a descendant 
CIDFont (see Section 5.6, “Composite Fonts”) 
Type 1
Type1
A font that defines glyph shapes using Type 1 font technology (see Section 
5.5.1, “Type 1 Fonts”). 
MMType1
A multiple master font—an extension of the Type 1 font that allows the gen-
eration of a wide variety of typeface styles from a single font (see “Multiple 
Master Fonts” on page 416) 
Type 3
Type3
A font that defines glyphs with streams of PDF graphics operators (see Sec-
tion 5.5.4, “Type 3 Fonts”) 
TrueType
TrueType
A font based  on  the  TrueType  font  format  (see Section  5.5.2,  “TrueType 
Fonts”) 
CIDFont
CIDFontType0
(PDF 1.2) A CIDFont whose  glyph descriptions are  based  on Type 1 font 
technology (see Section 5.6.3, “CIDFonts”) 
CIDFontType2
(PDF 1.2) A CIDFont whose glyph descriptions are based on TrueType font 
technology (see Section 5.6.3, “CIDFonts”) 
Add signature to preview pdf - C# PDF File Permission Library: add, remove, update PDF file permission in C#.net, ASP.NET, MVC, WPF
Tell C# users how to set PDF file permissions, like printing, copying, modifying, extracting, annotating, form filling, etc
adding signature to pdf doc; pdf will signature
Add signature to preview pdf - VB.NET PDF File Permission Library: add, remove, update PDF file permission in vb.net, ASP.NET, MVC, WPF
VB.NET Tutorial for How to Set PDF File Access Permissions Using XDoc.PDF for .NET
pdf converter sign in; sign pdf
Text
CHAPTER 5
412
Most font programs (and related programs, such as CIDFonts and CMaps) con-
form to external specifications, such as the Adobe Type 1 Font Format. This book 
does not include those specifications. See the Bibliography for more information 
about the specifications mentioned in this chapter. 
The  most  predictable  and  dependable  results  are  produced  when  all  font 
programs used to show text are embedded in the PDF file. The following sections 
describe precisely how to do so. If a PDF file refers to font programs that are not 
embedded, the results depend on the availability of fonts in the consumer appli-
cation’s environment. The following sections specify some conventions for refer-
ring  to  external  font  programs.  However,  some  details  of  font  naming,  font 
substitution, and glyph selection are implementation-dependent and  may vary 
among different applications and operating system environments. 
5.5 Simple Fonts
There are several types of simple fonts, all of which have the following properties: 
Glyphs in the font are selected by single-byte character codes obtained from a 
string that is shown by the text-showing operators. Logically, these codes index 
into a table of 256 glyphs; the mapping from codes to glyphs is called the font’s 
encoding. Each  font  program has  a  built-in encoding. Under  some circum-
stances,  the  encoding  can  be  altered  by  means  described  in  Section  5.5.5, 
“Character Encoding.” 
Each glyph has a single set of metrics, including a horizontal displacement or 
width, as described in Section 5.1.3, “Glyph Positioning and Metrics;” that is, 
simple fonts support only horizontal writing mode. 
Except for Type 0 fonts, Type 3 fonts in non-Tagged PDF documents, and cer-
tain standard Type 1 fonts, every font dictionary contains a subsidiary dictio-
nary, the font descriptor, containing font-wide metrics and other attributes of 
the font; see Section 5.7, “Font Descriptors.” Among those attributes is an op-
tional font file stream containing the font program. 
5.5.1 Type 1 Fonts
A Type 1  font program  is a stylized PostScript  program  that  describes  glyph 
shapes. It uses a compact encoding for the glyph descriptions, and it includes hint 
information that enables high-quality rendering even at small sizes and low reso-
C# WinForms Viewer: Load, View, Convert, Annotate and Edit PDF
Add text to PDF document in preview. • Add text box to PDF file in preview. Sign PDF document with signature. Search PDF text in preview.
sign pdf online; create pdf with signature field
C# WinForms Viewer: Load, View, Convert, Annotate and Edit Tiff
Viewer provides other utility features for processing Tiff while in preview, such as convert Tiff file to PDF, add annotations to Tiff, Create signature on tiff
adding a signature to a pdf file; adding a signature to a pdf in preview
Simple Fonts
SECTION 5.5
413
lutions. Details on this format are provided in a separate book, Adobe Type 1 Font 
Format. An alternative, more compact but functionally equivalent representation 
of a Type 1 font program is documented in Adobe Technical Note #5176, The 
Compact Font Format Specification. 
Note: Although a Type 1 font program uses PostScript language syntax, using it does 
not require a full PostScript interpreter; a specialized Type 1 font interpreter suffices. 
A Type 1 font dictionary contains the entries listed in Table 5.8. Some entries are 
optional for the standard 14 fonts listed under “Standard Type 1 Fonts (Standard 
14 Fonts)” on page 416, but are required otherwise. 
TABLE 5.8   Entries in a Type 1 font dictionary
KEY
TYPE
VALUE
Type
name
(Required) The  type of PDF  object that  this  dictionary  describes;  must  be 
Font
for a font dictionary. 
Subtype
name
(Required) The type of font; must be 
Type1
for a Type 1 font. 
Name
name
(Required in PDF 1.0; optional otherwise) The name by which this font is ref-
erenced in the 
Font
subdictionary of the current resource dictionary. 
Note:  This  entry  is  obsolescent  and  its  use  is  no  longer  recommended.  (See 
implementation note 60 in Appendix H.) 
BaseFont
name
(Required) The PostScript name of the font. For Type 1 fonts, this is usually 
the value of the 
FontName
entry in the font program; for more information, 
see Section 5.2 of the PostScript Language Reference, Third Edition. The Post-
Script name of the font can be used to find the font’s definition in the con-
sumer application or its environment. It is also the name that is used when 
printing to a PostScript output device. 
FirstChar
integer
(Required except for the standard 14 fonts) The first character code defined in 
the font’s 
Widths
array. 
Note: Beginning with PDF 1.5, the special treatment given to the standard 14 
fonts is deprecated. All fonts used in a PDF document should be represented us-
ing  a  complete  font  descriptor. For  backwards  capability,  viewer  applications 
must still provide the special treatment identified for the standard 14 fonts. 
C# PDF insert image Library: insert images into PDF in C#.net, ASP
viewer component supports inserting image to PDF in preview without adobe How to insert and add image, picture, digital photo, scanned signature or logo
adding signature to pdf file; export pdf sign in
C# HTML5 Viewer: Load, View, Convert, Annotate and Edit Raster
to zoom in or zoom out images while in preview. features, which allows users to add text signatures to images, draw freehand signature on images
adding signature to pdf; add signature to pdf acrobat reader
Text
CHAPTER 5
414
LastChar
integer
(Required except for the standard 14 fonts) The last character code defined in 
the font’s 
Widths
array. 
Note: Beginning with PDF 1.5, the special treatment given to the standard 14 
fonts is deprecated. All fonts used in a PDF document should be represented us-
ing  a  complete  font  descriptor. For  backwards  capability,  viewer  applications 
must still provide the special treatment identified for the standard 14 fonts. 
Widths
array
(Required except for the standard 14 fonts; indirect reference preferred) An ar-
ray of (
LastChar
− 
FirstChar
+ 1) widths, each element being the glyph width 
for the character code that equals 
FirstChar
plus the array index. For charac-
ter codes outside the range 
FirstChar
to 
LastChar
, the value of 
MissingWidth
from  the 
FontDescriptor
entry  for  this  font  is  used.  The  glyph  widths  are 
measured in units in which 1000 units  corresponds to 1 unit in text space. 
These widths must be consistent with the actual widths given in the font pro-
gram. (See implementation note 61 in Appendix H.) For more information 
on glyph widths and other glyph metrics, see Section 5.1.3, “Glyph Position-
ing and Metrics.” 
Note: Beginning with PDF 1.5, the special treatment given to the standard 14 
fonts is deprecated. All fonts used in a PDF document should be represented us-
ing  a  complete  font  descriptor. For  backwards  capability,  viewer  applications 
must still provide the special treatment identified for the standard 14 fonts. 
FontDescriptor
dictionary
(Required except for the standard 14 fonts; must be an indirect reference) A font 
descriptor describing the font’s metrics other than its glyph widths (see Sec-
tion 5.7, “Font Descriptors”). 
Note:  For  the  standard  14  fonts,  the  entries 
FirstChar
LastChar
Widths
,  and 
FontDescriptor
must either all be present or all be absent. Ordinarily, they are 
absent; specifying them enables a standard font to be overridden (see “Standard 
Type 1 Fonts (Standard 14 Fonts),” below). 
Note: Beginning with PDF 1.5, the special treatment given to the standard 14 
fonts is deprecated. All fonts used in a PDF document should be represented us-
ing  a  complete  font  descriptor. For  backwards  capability,  viewer  applications 
must still provide the special treatment identified for the standard 14 fonts. 
Encoding
name or 
dictionary
(Optional) A specification of the font’s character encoding if different from its 
built-in encoding. The value of 
Encoding
is either the name of a predefined 
encoding  (
MacRomanEncoding
MacExpertEncoding
 or 
WinAnsiEncoding
as described in Appendix D) or an encoding dictionary that specifies differ-
ences from the font’s built-in encoding or from a specified predefined encod-
ing (see Section 5.5.5, “Character Encoding”). 
KEY
TYPE
VALUE
C# HTML5 Viewer: Load, View, Convert, Annotate and Edit Tiff
is absolutely can be annotated in preview on RasterEdge HTML5 Viewer for C# .NET signature feature can help Users are allowed to add variety of signatures to
add jpg signature to pdf; create signature field in pdf
C# Create PDF Library SDK to convert PDF from other file formats
Preview PDF documents without other plug-ins. document metadata adding control, you can add some additional PDF file by adding digital signature (watermark) on
add signature pdf; create pdf signature stamp
Simple Fonts
SECTION 5.5
415
Example 5.6 shows the font dictionary for the Adobe Garamond® Semibold font. 
The font has an encoding dictionary (object 25), although neither the encoding 
dictionary nor the font descriptor (object 7) is shown in the example. 
Example 5.6
14  0  obj 
<<   /Type  /Font 
/Subtype  /Type1 
/BaseFont  /AGaramond−Semibold 
/FirstChar  0 
/LastChar  255 
/Widths  21 0 R 
/FontDescriptor  7 0 R 
/Encoding  25 0 R 
>> 
endobj
21  0  obj 
 255  255  255  255  255  255  255  255  255  255  255  255  255  255  255  255 
255  255  255  255  255  255  255  255  255  255  255  255  255  255  255  255 
255  280  438  510  510  868  834  248  320  320  420  510  255  320  255  347 
510  510  510  510  510  510  510  510  510  510  255  255  510  510  510  330 
781  627  627  694  784  580  533  743  812  354  354  684  560  921  780  792 
588  792  656  504  682  744  650  968  648  590  638  320  329  320  510  500 
380  420  510  400  513  409  301  464  522  268  259  484  258  798  533  492 
516  503  349  346  321  520  434  684  439  448  390  320  255  320  510  255 
627  627  694  580  780  792  744  420  420  420  420  420  420  402  409  409 
409  409  268  268  268  268  533  492  492  492  492  492  520  520  520  520 
486  400  510  510  506  398  520  555  800  800  1044  360  380  549  846  792 
713  510  549  549  510  522  494  713  823  549  274  354  387  768  615  496 
330  280  510  549  510  549  612  421  421  1000  255  627  627  792  1016  730 
500  1000  438  438  248  248  510  494  448  590  100  510  256  256  539  539 
486  255  248  438  1174  627  580  627  580  580  354  354  354  354  792  792 
790  792  744  744  744  268  380  380  380  380  380  380  380  380  380  380 
endobj
ToUnicode
stream
(Optional;  PDF 1.2)  A  stream  containing  a  CMap  file  that  maps  character 
codes to Unicode values (see Section 5.9, “Extraction of Text Content”). 
KEY
TYPE
VALUE
VB.NET PDF insert image library: insert images into PDF in vb.net
Import graphic picture, digital photo, signature and logo into PDF Add images to any selected PDF page in VB inserting image to PDF in preview without adobe PDF
pdf sign; add signature to pdf document
C# PDF remove image library: remove, delete images from PDF in C#.
vector image, graphic picture, digital photo, scanned signature, logo, etc. Remove PDF image in preview without adobe PDF reader Add necessary references:
click to sign pdf; pdf to word converter sign in
Text
CHAPTER 5
416
Standard Type 1 Fonts (Standard 14 Fonts)
The PostScript names of 14 Type 1 fonts, known as the standard 14 fonts, are as 
follows: 
Times−Roman
Helvetica
Courier
Symbol 
Times−Bold
Helvetica−Bold
Courier−Bold
ZapfDingbats 
Times−Italic
Helvetica−Oblique
Courier−Oblique 
Times−BoldItalic
Helvetica−BoldOblique
Courier−BoldOblique
These fonts, or their font metrics and suitable substitution fonts, must be avail-
able  to  the consumer  application. The character  sets  and  encodings for these 
fonts are listed in Appendix D. The Adobe font metrics (AFM) files for the stan-
dard 14 fonts are available from the ASN Web site (see the Bibliography). For 
more information on font metrics, see Adobe Technical Note #5004, Adobe Font 
Metrics File Format Specification. 
Ordinarily, a font dictionary that refers to one of the standard fonts should omit 
the 
FirstChar
LastChar
Widths
, and 
FontDescriptor
entries. However, it is per-
missible to override a standard font by including these entries and embedding the 
font program in the PDF file. (See implementation note 62 in Appendix H.)
Note: Beginning with PDF 1.5, the special treatment given to the standard 14 fonts 
is deprecated. All fonts used in a PDF document should be represented using a com-
plete font descriptor. For backwards capability, viewer applications must still pro-
vide the special treatment identified for the standard 14 fonts. 
Multiple Master Fonts
The multiple master font format is an extension of the Type 1 font format that al-
lows the generation of a wide variety of typeface styles from a single font pro-
gram. This is accomplished through the presence of various design dimensions in 
the font.  Examples of  design dimensions  are weight (light  to  extra-bold)  and 
width  (condensed  to  expanded).  Coordinates  along  these  design  dimensions 
(such as the degree of boldness) are specified by numbers. A particular choice of 
numbers selects an instance of the multiple master font. Adobe Technical Note 
#5015, Type 1 Font Format Supplement, describes multiple master fonts in detail. 
VB.NET PDF remove image library: remove, delete images from PDF in
vector image, graphic picture, digital photo, scanned signature, logo, etc. Remove PDF image in preview without adobe PDF reader Add necessary references:
pdf add signature field; add jpeg signature to pdf
VB.NET PDF copy, paste image library: copy, paste, cut PDF images
vector image, graphic picture, digital photo, scanned signature, logo, etc. Copy, paste and cut PDF image while preview without adobe Add necessary references:
add signature to pdf in preview; pdf signature field
Simple Fonts
SECTION 5.5
417
The font dictionary for a multiple master font instance has the same entries as a 
Type 1 font dictionary (Table 5.8 on page 413), with the following differences: 
The value of 
Subtype
is 
MMType1
If the PostScript name of the instance contains spaces, the spaces are replaced 
by underscores in the value of 
BaseFont
. For instance, as illustrated in Example 
5.7, the name “MinionMM 366 465 11 ” (which ends with a space character) 
becomes 
/MinionMM_366_465_11_
Example 5.7
 0  obj 
<<   /Type  /Font 
/Subtype  /MMType1 
/BaseFont  /MinionMM_366_465_11_ 
/FirstChar  32 
/LastChar  255 
/Widths  19 0 R 
/FontDescriptor  6 0 R 
/Encoding  5 0 R 
>> 
endobj
19  0  obj 
 187  235  317  430  427  717  607  168  326  326  421  619  219  317  219  282  427 
… Omitted data … 
569  0  569  607  607  607  239  400  400  400  400  253  400  400  400  400  400 
endobj
This example illustrates  a convention  for including  the numeric  values  of the 
design coordinates as part of the instance’s 
BaseFont
name. This convention is 
commonly used for accessing multiple master font instances  from  an external 
source  in the consumer application’s environment;  it  is  documented in Adobe 
Technical Note #5088, Font Naming Issues. However, this convention is not pre-
scribed as part of the PDF specification. In particular, if the font program for this 
instance is embedded in the PDF file, it must be an ordinary Type 1 font program, 
not a multiple master font program. This font program is called a snapshot of the 
multiple master font instance that incorporates the chosen values of the design 
coordinates. 
Text
CHAPTER 5
418
5.5.2 TrueType Fonts
The TrueType font format was developed by Apple Computer, Inc., and has been 
adopted as a standard font format for the Microsoft Windows operating system. 
Specifications for the TrueType font file format are available in Apple’s TrueType 
Reference Manual and Microsoft’s TrueType 1.0 Font Files Technical Specification. 
Note: A TrueType font program can be embedded directly in a PDF file as a stream 
object. The Type 42 font format that is defined for PostScript does not apply to PDF. 
A TrueType font dictionary can contain the same entries as a Type 1 font dictio-
nary (Table 5.8 on page 413), with the following differences: 
The value of 
Subtype
is 
TrueType
The value of 
BaseFont
is derived differently, as described below. 
The value of 
Encoding
is subject to limitations that are described in Section 
5.5.5, “Character Encoding.” 
The PostScript name for the value of 
BaseFont
is determined in one of two ways: 
Use the PostScript name that is an optional entry in the “name” table of the 
TrueType font. 
In the absence of such an entry in the “name” table, derive a PostScript name 
from the name by which the font is known in the host operating system. On a 
Windows  system,  the  name is based  on  the 
lfFaceName
field in a 
LOGFONT
structure; in the Mac OS, it is based on the name of the 
FOND
resource. If the 
name contains any spaces, the spaces are removed. 
If the font in a source document uses a bold or italic style but there is no font data 
for that style, the host operating system synthesizes the style. In this case, a com-
ma and the style name (one of 
Bold
Italic
, or 
BoldItalic
) are appended to the font 
name. For example, for a TrueType font that is a bold variant of the New York 
font, the 
BaseFont
value is written as 
/NewYork , Bold
(as illustrated in Example 
5.8). 
Simple Fonts
SECTION 5.5
419
Example 5.8
17  0  obj 
<<   /Type  /Font 
/Subtype  /TrueType 
/BaseFont  /NewYork , Bold 
/FirstChar  0 
/LastChar  255 
/Widths  23 0 R 
/FontDescriptor  7 0 R 
/Encoding  /MacRomanEncoding 
>> 
endobj
23  0  obj 
 0  333  333  333  333  333  333  333  0  333  333  333  333  333  333  333  333  333 
… Omitted data … 
803  790  803  780  780  780  340  636  636  636  636  636  636  636  636  636  636 
endobj
Note that for CJK (Chinese, Japanese, and Korean) fonts, the host font system’s 
font name is often encoded in the host operating system’s script. For instance, a 
Japanese font may have a name that is written in Japanese using some (unidenti-
fied) Japanese encoding. Thus, TrueType font names may contain multiple-byte 
character codes, each of which requires multiple characters to represent in a PDF 
name object (using the 
#
notation to quote special characters as needed). 
5.5.3 Font Subsets
PDF 1.1 permits documents to include subsets of Type 1 and TrueType fonts. 
The  font  and  font  descriptor  that  describe  a  font  subset  are  slightly  different 
from those of ordinary fonts. These  differences allow an application to recog-
nize  font  subsets and  to merge  documents containing  different subsets  of the 
same font. (For more information on font descriptors, see Section 5.7, “Font De-
scriptors.”) 
For  a  font  subset,  the  PostScript  name  of  the  font—the  value  of  the  font’s 
BaseFont
entry  and  the  font  descriptor’s 
FontName
entry—begins  with  a  tag
followed by a plus sign (
+
). The tag consists of exactly six uppercase letters; the 
choice of letters is arbitrary, but different subsets in the same PDF file must have 
different tags. For example, 
EOODIA+Poetica
is the name of a subset of Poetica
®
, a 
Type 1 font. (See implementation note 63 in Appendix H.) 
Text
CHAPTER 5
420
5.5.4 Type 3 Fonts
Type 3 fonts differ from the other fonts supported by PDF. A Type 3 font dictio-
nary defines the font; font dictionaries for other fonts simply contain information 
about the font and refer to a separate font program for the actual glyph descrip-
tions. In Type 3 fonts, glyphs are defined by streams of PDF graphics operators. 
These streams are associated with character names. A separate encoding entry 
maps character codes to the appropriate character names for the glyphs. 
Type 3 fonts are more flexible than Type 1 fonts because the glyph descriptions 
may contain arbitrary PDF graphics operators. However, Type 3 fonts have no 
hinting mechanism for improving output at small sizes or low resolutions. A Type 
3 font dictionary contains the entries listed in Table 5.9. 
TABLE 5.9   Entries in a Type 3 font dictionary
KEY
TYPE
VALUE
Type
name
(Required) The  type of PDF  object that  this  dictionary  describes;  must  be 
Font
for a font dictionary. 
Subtype
name
(Required) The type of font; must be 
Type3
for a Type 3 font. 
Name
name
(Required in PDF 1.0; optional otherwise) See Table 5.8 on page 413. 
FontBBox
rectangle
(Required)  A  rectangle  (see  Section  3.8.4,  “Rectangles”)  expressed  in  the 
glyph coordinate system, specifying the font bounding box. This is the small-
est rectangle enclosing the shape that would result if all of the glyphs of the 
font were placed with their origins coincident and then filled. 
If all four elements of the rectangle are zero, no assumptions are made based 
on the font bounding box. If any element is nonzero, it is essential that the 
font bounding box be accurate. If any glyph’s marks fall outside this bounding 
box, incorrect behavior may result. 
FontMatrix
array
(Required)  An  array  of  six  numbers  specifying  the  font  matrix,  mapping 
glyph  space  to  text  space  (see  Section  5.1.3,  “Glyph  Positioning  and 
Metrics”). A  common  practice  is  to define  glyphs  in  terms  of a  1000-unit 
glyph  coordinate  system,  in  which  case  the  font  matrix  is 
[ 0.001  0  0  0.001  0  0 ]
Documents you may be interested
Documents you may be interested