asp.net pdf viewer disable save : Generate pdf thumbnails application software tool html windows winforms online PDFlib-7-tutorial8-part400

4.4  8-Bit Encodings s 81
4.48-Bit Encodings
8-bit encodings (also called single-byte encodings) map each byte in a text string to a 
single character, and are thus limited to 256 different characters at a time.
Table 4.4 lists the predefined encodings in PDFlib, and details their use with several 
important classes of fonts. It is important to realize that certain scripts or languages 
have requirements which cannot be met by common fonts. For example, Acrobat’s core 
fonts do not contain all characters required for ISO 8859-2 (e.g. Polish), while PostScript 
3, OpenType Pro, and TrueType »big fonts« do.
Note The »chartab« example contained in the PDFlib distribution can be used to easily print charac-
ter tables for arbitrary font/encoding combinations.
Notes on the macroman encoding. This encoding reflects the MacOS character set, al-
beit with the old currency symbol at position 219 = 0xDB, and not the Euro glyph as re-
defined by Apple (this incompatibility is dictated by the PDF specification). The mac-
roman_apple encoding is identical to macroman except for the following differences:
>Position 219 = 0xDB in macroman_apple holds the Euro glyph instead of the currency 
symbol.
>The macroman_apple encoding includes the greek/mathematical symbols as defined 
in the Mac OS character set. Although these are available in the macroman_apple en-
coding, the required glyphs are contained only in few fonts.
Host encoding. The special encoding host does not have any fixed meaning, but will be 
mapped to another 8-bit encoding depending on the current platform as follows:
>on Mac OS Classic it will be mapped to macroman;
>on IBM eServer zSeries with MVS or USS it will be mapped to ebcdic;
>on IBM eServer iSeries it will be mapped to ebcdic_37;
>on Windows it will be mapped to winansi;
>on all other systems (including Mac OS X) it will be mapped to iso8859-1;
Host encoding is primarily useful for writing platform-independent test programs (like 
those contained in the PDFlib distribution) and other simple applications. Host encod-
ing is not recommended for production use, but should be replaced by whatever encod-
ing is appropriate.
Encoding host is used as the default encoding for Name strings in non-Unicode-
aware language bindings, since this is the most appropriate encoding for file names etc.
Automatic encoding. PDFlib supports a mechanism which can be used to specify the 
most natural encoding for certain environments without further ado. Supplying the 
keyword auto as an encoding name specifies a platform- and environment-specific 8-bit 
encoding for text fonts as follows:
>On Windows: the current system code page (see below for details)
>On Unix and Mac OS X: iso8859-1 (except LWFN PostScript fonts on the Mac for which 
auto will be mapped to macroman)
>On Mac OS Classic: macroman
>On IBM eServer iSeries: the current job’s encoding (IBMCCSID000000000000)
>On IBM eServer zSeries: ebcdic (=code page 1047).
Generate pdf thumbnails - Draw thumbnail images for PDF in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Support Thumbnail Generation with Various Options for Quick PDF Navigation
.pdf printing in thumbnail size; pdf thumbnail generator
Generate pdf thumbnails - VB.NET PDF Thumbnail Create SDK: Draw thumbnail images for PDF in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
Support Thumbnail Generation with Various Options for Quick PDF Navigation
how to make a thumbnail of a pdf; view pdf image thumbnail
82
Chapter 4:  Unicode and Legacy Encodings
Table 4.4 4 Availability of glyphs for predefined encodings in several classes of fonts: some languages cannot be 
represented with Acrobat’s core fonts.
code page
supported languages
PS Level 1/2,
1Acrobat 4/5
2Acrobat 6/7/8 
core fonts
PostScript 3
3fonts
OpenType 
4Pro Fonts
TrueType
5»Big Fonts«
winansi
identical to cp1252 (superset of iso8859-1)
yes
yes
yes
yes
yes
macroman
Mac Roman encoding, the original Macintosh character set
yes
yes
yes
yes
yes
macroman_
apple
similar to macroman, but replaces currency with Euro and includes 
additional mathematical/greek symbols
yes
yes
ebcdic
EBCDIC code page 1047
yes
yes
yes
yes
yes
ebcdic_37
EBCDIC code page 037
yes
yes
yes
yes
yes
pdfdoc
PDFDocEncoding
yes
yes
yes
yes
yes
iso8859-1
(Latin-1) Western European languages
yes
yes
yes
yes
yes
iso8859-2
(Latin-2) Slavic languages of Central Europe
yes
2
yes
yes
yes
iso8859-3
(Latin-3) Esperanto, Maltese
yes
yes
iso8859-4
(Latin-4) Estonian, the Baltic languages, Greenlandic
yes
2
yes
yes
iso8859-5
Bulgarian, Russian, Serbian
yes
yes
iso8859-6
Arabic
yes
iso8859-7
Modern Greek
1 miss.
yes
iso8859-8
Hebrew and Yiddish
yes
iso8859-9
(Latin-5) Western European, Turkish
5 miss.
yes
2
yes
yes
yes
iso8859-10
(Latin-6) Nordic languages
yes
2
1 miss.
yes
iso8859-13
(Latin-7) Baltic languages
yes
2
yes
yes
yes
iso8859-14
(Latin-8) Celtic
iso8859-15
(Latin-9) Adds Euro as well as French and Finnish characters to 
Latin-1
Euro 
miss.
yes
yes
yes
yes
iso8859-16
(Latin-10) Hungarian, Polish, Romanian, Slovenian
yes
2
yes
yes
yes
cp1250
Central European
yes
yes
yes
cp1251
Cyrillic
yes
yes
cp1252
Western European (same as winansi)
yes
yes
yes
yes
yes
cp1253
Greek
1 miss.
yes
cp1254
Turkish
5 miss. . –
yes
yes
yes
cp1255
Hebrew
yes
cp1256
Arabic
5 miss.
cp1257
Baltic
yes
yes
yes
cp1258
Viet Nam
yes
1. Core fonts shipped with Acrobat 4/5 (original Adobe Latin character set; generally Type 1 Fonts since 1982)
2. The information in the table relates to the Times and Helvetica font families. The Courier font family which is used in Acrobat contains
fewer glyphs, and does not cover iso8859-2, iso8859-4, iso8859-9, iso8859-10, iso8859-13, and iso8859-16.
3. Extended Adobe Latin character set (CE-Fonts), generally Type 1 Fonts shipped with PostScript 3 devices
4. Adobe OpenType Pro fonts contain more glyphs than regular OpenType fonts.
5. Windows TrueType fonts containing large glyph complements, e.g. Tahoma
C# PDF - Read Barcode on PDF in C#.NET
File: Compress PDF. Page: Create Thumbnails. Page: Insert PDF void ReadBarcodeFromPDF( string filename, int pageIndex) { // generate PDF document PDFDocument doc
pdf preview thumbnail; create thumbnail jpeg from pdf
C# PDF - Create Barcode on PDF in C#.NET
File: Compress PDF. Page: Create Thumbnails. Page: Insert PDF Pages. Page: Delete Existing PDF Generate over 20 linear and 2d barcodes on PDF document page
pdf thumbnail generator online; how to make a thumbnail from pdf
4.4  8-Bit Encodings s 83
For symbol fonts the keyword auto will be mapped to builtin encoding. While automatic 
encoding is convenient in many circumstances, using this method will make your 
PDFlib client programs inherently non-portable.
Tapping system code pages. PDFlib can be instructed to fetch code page definitions 
from the system and transform it appropriately for internal use. This is very convenient 
since it frees you from implementing the code page definition yourself. Instead of sup-
plying the name of a built-in or user-defined encoding for PDF_load_font(), simply use 
an encoding name which is known to the system. This feature is only available on se-
lected platforms, and the syntax for the encoding string is platform-specific:
>On Windows the encoding name is cp<number>, where <number> is the number of 
any single-byte code page installed on the system (see Section 5.6.2, »Custom CJK 
Fonts«, page 117, for information on multi-byte Windows code pages):
font = p.load_font("Helvetica", "cp1250", "");
Single-byte code pages will be transformed into an internal 8-bit encoding, while 
multi-byte code pages will be mapped to Unicode at runtime. The text must be sup-
plied in a format which is compatible with the chosen code page (e.g. SJIS for cp932).
>On IBM eServer iSeries any Coded Character Set Identifier (CCSID) can be used. The 
CCSID must be supplied as a string, and PDFlib will apply the prefix IBMCCSID to the 
supplied code page number. PDFlib will also add leading 0 characters if the code page 
number uses fewer than 5 characters. Supplying 0 (zero) as the code page number 
will result in the current job’s encoding to be used:
font = p.load_font("Helvetica", "273", "");
>On IBM eServer zSeries with USS or MVS any Coded Character Set Identifier (CCSID) can 
be used. The CCSID must be supplied as a string, and PDFlib will pass the supplied 
code page name to the system literally without applying any change:
font = p.load_font("Helvetica", "IBM-273", "");
User-defined 8-bit encodings. In addition to predefined encodings PDFlib supports 
user-defined 8-bit encodings. These are the way to go if you want to deal with some 
character set which is not internally available in PDFlib, such as EBCDIC character sets 
different from the one supported internally in PDFlib. PDFlib supports encoding tables 
defined by PostScript glyph names, as well as tables defined by Unicode values.
The following tasks must be done before a user-defined encoding can be used in a 
PDFlib program (alternatively the encoding can also be constructed at runtime using 
PDF_encoding_set_char()):
>Generate a description of the encoding in a simple text format.
>Configure the encoding in the PDFlib resource file (see Section 3.1.3, »Resource Con-
figuration and File Searching«, page 48) or via PDF_set_parameter().
>Provide a font (metrics and possibly outline file) that supports all characters used in 
the encoding.
The encoding file simply lists glyph names and numbers line by line. The following ex-
cerpt shows the start of an encoding definition:
% Encoding definition for PDFlib, based on glyph names
% name
code
Unicode (optional)
space
32
0x0020
C# Image: Tutorial for Document Viewing & Displaying in ASP.NET
To connect the Viewer with the Thumbnails, type WebAnnotationViewer1 into the dedicated to provide powerful & profession imaging controls, PDF document, tiff
create pdf thumbnail image; pdf thumbnail fix
Process Images in Web Image Viewer | Online Tutorials
Also can change the order of images & file pages by dragging & dropping thumbnails; Commonly used document types are supported, including PDF, multi-page TIFF
html display pdf thumbnail; pdf reader thumbnails
84
Chapter 4:  Unicode and Legacy Encodings
exclam
33
0x0021
...
If no Unicode value has been specified PDFlib will search for a suitable Unicode value in 
its internal tables. The next example shows a snippet from a Unicode code page:
% Code page definition for PDFlib, based on Unicode values
% Unicode
code
0x0020
32
0x0021
33
...
More formally, the contents of an encoding or code page file are governed by the follow-
ing rules:
>Comments are introduced by a percent ’%’ character, and terminated by the end of 
the line.
>The first entry in each line is either a PostScript glyph name or a hexadecimal Uni-
code value composed of a 0x prefix and four hex digits (upper or lower case). This is 
followed by whitespace and a hexadecimal (0xoo–0xFF) or decimal (0–255) character 
code. Optionally, name-based encoding files may contain a third column with the 
corresponding Unicode value.
>Character codes which are not mentioned in the encoding file are assumed to be un-
defined. Alternatively, a Unicode value of 0x0000 or the character name .notdef can 
be provided for unused slots.
As a naming convention we refer to name-based tables as encoding files (*.enc), and Uni-
code-based tables as code page files (*.cpg), although PDFlib treats both kinds in the 
same way, and doesn’t care about file names. In fact, PDFlib will automatically convert 
between name-based encoding files and Unicode-based code page files whenever it is 
necessary. This conversion is based on Adobe’s standard list of PostScript glyph names 
(the Adobe Glyph List, or AGL
1
), but non-AGL names can also be used. PDFlib will assign 
free Unicode values to these non-AGL names, and adjusts the values when reading an 
OpenType font file which includes a mapping from glyph names to Unicode values.
PDFlib’s internal glyph list contains more than 6500 glyph names. Encoding files are 
required for PostScript fonts with non-standard glyph names, while code pages are 
more convenient when dealing with Unicode-based TrueType or OpenType fonts.
1. The AGL can be found at partners.adobe.com/public/developer/en/opentype/glyphlist.txt 
C# Image: Create C#.NET Windows Document Image Viewer | Online
Support displaying and viewing multiple document & image formats (PDF, MS Word, Tiff Easy to create high-quality image thumbnails & automatic navigation from
generate pdf thumbnails; pdf thumbnail html
VB.NET PDF Library SDK to view, edit, convert, process PDF file
See this VB.NET guide to learn how to use RasterEdge PDF SDK for .NET to perform quick file navigation. You may easily generate thumbnail image from PDF.
pdf first page thumbnail; disable pdf thumbnails
4.5  Encodings for Chinese, Japanese, and Korean Text t 85
4.5Encodings for Chinese, Japanese, and Korean Text
Historically, a wide variety of CJK encoding schemes have been developed by diverse 
standards bodies and companies. Fortunately, all prevalent encodings are supported by 
Acrobat and PDF by default. Since the concept of an encoding is much more complicat-
ed for CJK text than for Latin text, simple 8-bit encodings no longer suffice. Instead, 
PostScript and PDF use the concept of character collections and character maps (CMaps) 
for organizing the characters in a font.
Predefined CMaps for common CJK encodings. The predefined CJK CMaps are listed in 
Table 4.5. As can be seen from the table, they support most CJK encodings used on Mac, 
Windows, and Unix systems, as well as several vendor-specific encodings, e.g. Shift-JIS, 
EUC, and ISO2022 for Japanese, GB and Big5 for Chinese, and KSC for Korean. Unicode is 
supported for all locales as well. Tables with all supported characters are available from 
Adobe
1
.
Note Unicode-aware language bindings support only use Unicode-compatible CMaps (UCS2 or 
UTF16). Other CMaps can not be used (see Section 4.3.2, »Strings in Unicode-aware Language 
Bindings«, page 76).
CJK text encoding for standard CMaps. The client is responsible for supplying text en-
coded such that it matches the requested CMap. PDFlib checks whether the supplied 
text conforms to the requested CMap, and will raise an exception for bad text input 
which doesn’t conform to the selected CMap.
For Unicode CMaps the high-order byte of a character must appear first. Alternative-
ly, the byte ordering and text format can be selected with the textformat parameter pro-
vided a Unicode CMap (UCS-2 or UTF-16) is used.
Since several of the supported encodings may contain null characters in the text 
strings, C developers must take care not to use the PDF_show() etc. functions, but in-
stead PDF_show2() etc. which allow for arbitrary binary strings along with a length pa-
rameter. For all other language bindings, the text functions support binary strings, and 
PDF_show2() etc. are not required.
CMap configuration. In order to create Chinese, Japanese, or Korean (CJK) text output 
with one of the predefined CMaps PDFlib requires the corresponding CMap files for pro-
cessing the incoming text and mapping CJK encodings to Unicode. The CMap files are 
available in a separate package. They should be installed as follows:
>On Windows the CMap files will be found automatically if you place them in the 
resource/cmap directory within the PDFlib installation directory.
>On other systems you can place the CMap files at any convenient directory, and 
must manually configure the CMap files by setting the SearchPath at runtime:
p.set_parameter("SearchPath", "/path/to/resource/cmap");
As an alternative method for configuring access to the CJK CMap files you can set the 
PDFLIBRESOURCEFILE environment variable to point to a UPR configuration file which 
contains a suitable SearchPath definition.
1. See partners.adobe.com/asn/tech/type/cidfonts.jsp for a wealth of resources related to CID fonts, including tables with 
all supported glyphs (search for »character collection«).
C# PDF Library SDK to view, edit, convert, process PDF file for C#
See this C# guide to learn how to use RasterEdge PDF SDK for .NET to perform quick file navigation. You may easily generate thumbnail image from PDF.
create thumbnail from pdf; enable pdf thumbnail preview
How to C#: Basic SDK Concept of XDoc.PDF for .NET
Thumbnail. You can generate thumbnail image(s) from PDF file for quick viewing and further manipulating. Class: PDFDocument. How to C#: XDoc.PDF Classes Usage.
program to create thumbnail from pdf; thumbnail view in for pdf files
86
Chapter 4:  Unicode and Legacy Encodings
Table 4.5 5 Predefined CMaps for Japanese, Chinese, and Korean text (from the PDF Reference)
locale
CMap name
character set and text format
Simplified 
Chinese
UniGB-UCS2-H
UniGB-UCS2-V
Unicode (UCS-2) encoding for the Adobe-GB1 character collection
UniGB-UTF16-H
UniGB-UTF16-V
Unicode (UTF-16BE) encoding for the Adobe-GB1 character collection. Contains 
mappings for all characters in the GB18030-2000 character set.
GB-EUC-H
GB-EUC-V
Microsoft Code Page 936 (charset 134), GB 2312-80 character set, EUC-CN encoding
GBpc-EUC-H
GBpc-EUC-V
Macintosh, GB 2312-80 character set, EUC-CN encoding, Script Manager code 2
GBK-EUC-H, -V
Microsoft Code Page 936 (charset 134), GBK character set, GBK encoding
GBKp-EUC-H
GBKp-EUC-V
Same as GBK-EUC-H, but replaces half-width Latin characters with proportional 
forms and maps code 0x24 to dollar ($) instead of yuan (¥).
GBK2K-H, -V
GB 18030-2000 character set, mixed 1-, 2-, and 4-byte encoding
Traditional 
Chinese
UniCNS-UCS2-H
UniCNS-UCS2-V
Unicode (UCS-2) encoding for the Adobe-CNS1 character collection
UniCNS-UTF16-H
UniCNS-UTF16-V
Unicode (UTF-16BE) encoding for the Adobe-CNS1 character collection. Contains 
mappings for all of HKSCS-2001 (2- and 4-byte character codes)
B5pc-H, -V
Macintosh, Big Five character set, Big Five encoding, Script Manager code 2
HKscs-B5-H
HKscs-B5-V
Hong Kong SCS (Supplementary Character Set), an extension to the Big Five 
character set and encoding
ETen-B5-H, -V
Microsoft Code Page 950 (charset 136), Big Five with ETen extensions
ETenms-B5-H
ETenms-B5-V
Same as ETen-B5-H, but replaces half-width Latin characters with proportional 
forms
CNS-EUC-H, -V
CNS 11643-1992 character set, EUC-TW encoding
Japanese
UniJIS-UCS2-H, -V
Unicode (UCS-2) encoding for the Adobe-Japan1 character collection
UniJIS-UCS2-HW-H
UniJIS-UCS2-HW-V
Same as UniJIS-UCS2-H, but replaces proportional Latin characters with half-
width forms
UniJIS-UTF16-H
UniJIS-UTF16-V
Unicode (UTF-16BE) encoding for the Adobe-Japan1 character collection. Contains 
mappings for all characters in the JIS X 0213:1000 character set.
83pv-RKSJ-H
Mac, JIS X 0208 with KanjiTalk6 extensions, Shift-JIS, Script Manager code 1
90ms-RKSJ-H
90ms-RKSJ-V
Microsoft Code Page 932 (charset 128), JIS X 0208 character set with NEC and IBM 
extensions
90msp-RKSJ-H
90msp-RKSJ-V
Same as 90ms-RKSJ-H, but replaces half-width Latin characters with proportional 
forms
90pv-RKSJ-H
Mac, JIS X 0208 with KanjiTalk7 extensions, Shift-JIS, Script Manager code 1
Add-RKSJ-H, -V
JIS X 0208 character set with Fujitsu FMR extensions, Shift-JIS encoding
EUC-H, -V
JIS X 0208 character set, EUC-JP encoding
Ext-RKSJ-H, -V
JIS C 6226 (JIS78) character set with NEC extensions, Shift-JIS encoding
H, V
JIS X 0208 character set, ISO-2022-JP encoding
Korean
UniKS-UCS2-H, -V
Unicode (UCS-2) encoding for the Adobe-Korea1 character collection
UniKS-UTF16-H, -V
Unicode (UTF-16BE) encoding for the Adobe-Korea1 character collection
KSC-EUC-H, -V
KS X 1001:1992 character set, EUC-KR encoding
KSCms-UHC-H
KSCms-UHC-V
Microsoft Code Page 949 (charset 129), KS X 1001:1992 character set plus 8822 
additional hangul, Unified Hangul Code (UHC) encoding
KSCms-UHC-HW-H
KSCms-UHC-HW-V
Same as KSCms-UHC-H, but replaces proportional Latin characters with half-
width forms
KSCpc-EUC-H
Mac, KS X 1001:1992 with Mac OS KH extensions, Script Manager Code 3
4.5  Encodings for Chinese, Japanese, and Korean Text t 87
Note On MVS the CMap files must be installed from an alternate package which contains CMaps 
with shortened file names.
Code pages for custom CJK fonts. On Windows PDFlib supports any CJK code page in-
stalled on the system. On other platforms the code pages listed in Table 4.6 can be used. 
These code pages will be mapped internally to the corresponding CMap (e.g. cp932 will 
be mapped to 90ms-RKSJ-H/V). Because of this mapping the appropriate CMaps must be 
configured (see above). The textformat parameter must be set to auto, and the text must 
be supplied in a format which is compatible with the chosen code page.
Table 4.6 6 CJK code pages (must be used with textformat=auto or textformat=bytes)
locale
code page
format
character set
Simplified Chinese
cp936
GBK
GBK
Traditional Chinese
cp950
Big Five
Big Five with Microsoft extensions
Japanese
cp932
Shift-JIS
JIS X 0208:1997 with Microsoft extensions
Korean
cp949
UHC
KS X 1001:1992, remaining 8822 hangul as 
extension
cp1361
Johab
Johab
88
Chapter 4:  Unicode and Legacy Encodings
4.6Addressing Characters and Glyphs
Some environments require the programmer to write source code in 8-bit encodings 
(such as winansi, macroman, or ebcdic). This makes it cumbersome to include isolated 
Unicode characters in 8-bit encoded text without changing all characters in the text to 
multi-byte encoding. In order to aid developers in this situation, PDFlib supports sever-
al auxiliary methods for expressing text.
4.6.1Escape Sequences
PDFlib supports a method for easily incorporating arbitrary values within text strings 
via escape sequences (similar sequences are supported in many programming languag-
es). For example, the \t sequence in the default text of a text block can be used to include 
tab characters which may not be possible by direct keyboard input. Similarly, escape se-
quences are useful for expressing codes in symbol fonts.
Escape sequences are a shortcut for creating certain byte values. The values created 
from escape sequences will always be interpreted in the selected encoding (unlike char-
acter references, which will always be interpreted in Unicode). The byte values resulting 
from resolving escape sequences are listed in Table 4.7; some differ between ASCII and 
EBCDIC platforms. Only byte values in the range 0-255 can be expressed with escape se-
quences.
Escape sequences will not be converted by default; you must explicitly set the 
escapesequence parameter or option to true if you want to use escape sequences in con-
tent strings:
p.set_parameter("escapesequence", "true");
Cookbook A full code sample can be found in the Cookbook topic fonts/escape_sequences.
Escape sequences will be evaluated in all content strings, hypertext strings, and name 
strings after BOM detection, but before converting to the target format. If textformat= 
utf16le or utf16be escape sequences must be expressed as two byte values according to 
the selected format. If textformat=utf8 the resulting code will not be converted to UTF-8.
Table 4.7 7 Escape sequences for byte values
Sequence
Mac, Windows, 
Linux, Unix
EBCDIC platforms 
(zSeries/iSeries)
common interpretation
\f
0C
0C
form feed
\n
0A
15/25
line feed
\r
0D
0D
carriage return
\t
09
05
horizontal tabulation
\v
0B
0B
line tabulation
\\
5C
E0
backslash
\xNN
two hexadecimal digits specifying a byte value
\NNN
three octal digits (up to \377) specifying a byte value
4.6  Addressing Characters and Glyphs s 89
If an escape sequence cannot be resolved (e.g. \x followed by invalid hex digits) an 
exception will be thrown. For content strings the behavior is controlled by the glyph-
check and errorpolicy settings.
4.6.2Character References and Glyph Name References
Cookbook A full code sample can be found in the Cookbook topic fonts/character_references.
HTML-style character references. PDFlib supports all numeric character references and 
character entity references defined in HTML4.0
1
. Numeric character references can be 
supplied in decimal or hexadecimal notation; they will always be interpreted as Uni-
code values.
Character references will not be converted by default; you must explicitly set the 
charref parameter or option to true if you want to use character references in content 
strings:
p.set_parameter("charref", "true");
Note Code points 128-159 (decimal) or 0x80-0x9F (hexadecimal) do not reference winansi code 
points. In Unicode they do not refer to printable characters, but only control characters.
The following are examples for valid character references along with a description of 
the resulting character:
&#173;
soft hyphen
&#xAD;
soft hyphen
&shy;
soft hyphen
&#229;
letter a with small circle above (decimal)
&#xE5;
letter a with small circle above (hexadecimal, lowercase x)
&#Xe5;
letter a with small circle above (hexadecimal, uppercase X)
&#x20AC;
Euro glyph (hexadecimal)
&#8364;
Euro glyph (decimal)
&euro;
Euro glyph (entity name)
&lt;
less than sign
&gt;
greater than sign
&amp;
ampersand sign
&Alpha;
Greek Alpha
Note Although you can reference any Unicode character with character references (e.g. Greek char-
acters and mathematical symbols), the font will not automatically be switched. In order to ac-
tually use such characters you must explicitly select an appropriate font if the current font does 
not contain the specified characters.
In addition to the HTML-style references mentioned above PDFlib supports custom 
character entity references which can be used to specify control characters for Text-
flows. Table 4.8 lists these additional character references.
If a character reference cannot be resolved (e.g. &# followed by invalid decimal dig-
its, or & followed by an unknown character name) an exception will be thrown. For con-
tent strings the behavior is controlled by the glyphcheck and errorpolicy settings.
1. See www.w3.org/TR/REC-html40/charset.html#h-5.3 
90
Chapter 4:  Unicode and Legacy Encodings
Glyph name references. A font may contain glyphs which are not directly accessible 
because the corresponding Unicode values are not known in advance (e.g. PUA assign-
ments) or because they do not even have Unicode values in the font. Although all 
glyphs in a font can be addressed via the glyphid encoding, this is very cumbersome and 
does not fit Unicode workflows. As a useful facility glyph name references can be used. 
These are similar to character references, but use a slightly different syntax and refer to 
the glyph by name (note that the first period character is part of the syntax, while the 
second is part of the glyph name in the examples):
&.T.swash;
&.orn.15;
Glyph name references will not be converted by default; you must explicitly set the 
charref parameter or option to true if you want to use glyph name references in content 
strings:
p.set_parameter("charref", "true");
Glyph name references are useful for alternate forms (e.g. swash characters, tabular fig-
ures) and glyphs without any specific Unicode semantics (symbols, icons, and orna-
ments). The general syntax is &.<name>; where name is a glyph name which will be sub-
stituted as follows:
>Font-specific glyph names from OpenType fonts (but not OpenType CID fonts) can 
be used for content strings (since these are always related to a particular font);
>Glyph names used in encodings can be used for content strings;
>Names from the Adobe Glyph List (including the uniXXXX and u1XXXX forms) plus 
certain common »misnamed« glyph names will always be accepted for content 
strings and hypertext strings.
Table 4.8 8 Control characters and their meaning in Textflows
Unicode character
entity name
equiv. Text-
flow option
meaning within Textflows in Unicode-compatible fonts
U+0020
SP, space
space
align words and break lines
U+00A0
NBSP, nbsp
(none)
(no-break space) space character which will not break lines
U+0009
HT, hortab
(none)
horizontal tab: will be processed according to the ruler, 
tabalignchar, and tabalignment options
U+002D
HY, hyphen
(none)
separator character for hyphenated words
U+00AD
SHY, shy
(none)
(soft hyphen) hyphenation opportunity, only visible at line breaks
U+000B
U+2028
VT, verttab
LS, linesep
nextline
(next line) forces a new line
U+000A
U+000D
U+000D and
U+000A
U+0085
U+2029
LF, linefeed
CR, return
CRLF
NEL, newline
PS, parasep
next-
paragraph
(next paragraph) Same effect as nextline; in addition, the 
parindent option will affect the next line.
U+000C
FF, formfeed
return
PDF_fit_textflow() will stop, and return the string _nextpage.
Documents you may be interested
Documents you may be interested