open pdf file in new tab in asp.net c# : Erase text in pdf document Library SDK component .net wpf windows mvc pdflib-manual-5_0210-part1337

4.7  Chinese, Japanese, and Korean Text 101
Acrobat supports a number of standard fonts for CJK text. These fonts are supplied 
with the Acrobat installation (or the Asian FontPack), and therefore don’t have to be em-
bedded in the PDF file. These fonts contain all characters required for common encod-
ings, and support both horizontal and vertical writing modes. The standard fonts and 
CMaps are documented in Table 4.5. The Acrobat 4 fonts can also be used with Acrobat 5, 
but the corresponding Acrobat 5 fonts will be used for display and printing if a required 
font is not installed on the system.
Note Acrobat’s standard CJK fonts do not support bold and italic variations. However, these can be 
simulated with the artificial font style feature (see Section 4.6.3, »Text Variations«, page 97).
As can be seen from the table, the default CMaps support most CJK encodings used on 
Mac, Windows, and Unix systems, as well as several other vendor-specific encodings. In 
particular, the major Japanese encoding schemes Shift-JIS, EUC, ISO 2022, and Unicode 
(UCS-2) are supported. Tables with all supported characters are available from Adobe
1
CMap descriptions can be found in Table 4.6.
Note Unicode-capable language bindings must only use UCS2-compatible CMaps. Other CMaps are 
not supported.
Horizontal and vertical writing mode. PDFlib supports both horizontal and vertical 
writing modes for standard CJK fonts and CMaps. The mode is selected along with the 
encoding by choosing the appropriate CMap name. CMaps with names ending in -H se-
lect horizontal writing mode, while the -V suffix selects vertical writing mode.
1. See http://partners.adobe.com/asn/developer/typeforum/cidfonts.html for a wealth of resources related to CID fonts, 
including tables with all supported glyphs (search for »character collection«).
Table 4.5 Acrobat’s standard fonts and CMaps (encodings) for Japanese, Chinese, and Korean text
locale
font name
sample
supported CMaps (encodings)
Simplified 
Chinese
STSong-Light
1
STSongStd-Light-Acro
2
1. Available in Acrobat 4; Acrobat 5 will substitute these with different fonts.
2. Available in Acrobat 5 only.
GB-EUC-H, GB-EUC-V, GBpc-EUC-H, GBpc-EUC-V, 
GBK-EUC-H, GBK-EUC-V, GBKp-EUC-H, GBKp-EUC-V, 
GBK2K-H, GBK2K-V, UniGB-UCS2-H, UniGB-UCS2-V
Traditional 
Chinese
MHei-Medium
1
MSung-Light
1
MSungStd-Light-Acro
2
B5pc-H, B5pc-V, HKscs-B5-H, HKscs-B5-V, ETen-B5-H, 
ETen-B5-V, ETenms-B5-H, ETenms-B5-V, CNS-EUC-H, 
CNS-EUC-V, UniCNS-UCS2-H, UniCNS-UCS2-V
Japanese
HeiseiKakuGo-W5
1
HeiseiMin-W3
1
KozMinPro-Regular-Acro
2
83pv-RKSJ-H, 90ms-RKSJ-H, 90ms-RKSJ-V, 90msp-
RKSJ-H, 90msp-RKSJ-V, 90pv-RKSJ-H, Add-RKSJ-H, 
Add-RKSJ-V, EUC-H, EUC-V, Ext-RKSJ-H, Ext-RKSJ-V, 
H, V, UniJIS-UCS2-H, UniJIS-UCS2-V, UniJIS-UCS2-
HW-H, UniJIS-UCS2-HW-V
Korean
HYGoThic-Medium
1
HYSMyeongJo-Medium
1
HYSMyeongJoStd-Medium-
Acro
2
KSC-EUC-H, KSC-EUC-V, KSCms-UHC-H, KSCms-
UHC-V, KSCms-UHC-HW-H, KSCms-UHC-HW-V, 
KSCpc-EUC-H, UniKS-UCS2-H, UniKS-UCS2-V
Erase text in pdf document - delete, remove text from PDF file in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Allow C# developers to use mature APIs to delete and remove text content from PDF document
how to delete text in pdf acrobat; delete text from pdf online
Erase text in pdf document - VB.NET PDF delete text library: delete, remove text from PDF file in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
VB.NET Programming Guide to Delete Text from PDF File
how to delete text in pdf preview; how to edit and delete text in pdf file online
102
Chapter 4:  Text Handling
Table 4.6 Predefined CMaps for Japanese, Chinese, and Korean text (from the PDF Reference)
locale
supported CMaps
description
Simplified 
Chinese
UniGB-UCS2-H
UniGB-UCS2-V
Unicode (UCS-2) encoding for the Adobe-GB1 character collection
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
1
GBKp-EUC-V
1
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
1
, -V
1
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
B5pc-H
B5pc-V
Macintosh, Big Five character set, Big Five encoding, Script Manager code 2
HKscs-B5-H
1
HKscs-B5-V
1
Hong Kong SCS (Supplementary Character Set), an extension to the Big 
Five character set and encoding
ETen-B5-H
ETen-B5-V
Microsoft Code Page 950 (charset 136), Big Five character set 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
83pv-RKSJ-H
Macintosh, JIS X 0208 character set with KanjiTalk6 extensions, Shift-JIS 
encoding, 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
Macintosh, JIS X 0208 character set with KanjiTalk7 extensions, Shift-JIS 
encoding, 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
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
Macintosh, KS X 1001:1992 character set with Mac OS KH extensions, Script 
Manager Code 3
1. Only available for PDF 1.4 / Acrobat 5 and above
C# WPF Viewer: Load, View, Convert, Annotate and Edit PDF
PDF Protection. • Add signatures to PDF document. • Erase PDF text. • Erase PDF images. • Erase PDF pages. Miscellaneous. • Select PDF text on viewer.
how to delete text from pdf document; how to delete text in pdf file
C# WinForms Viewer: Load, View, Convert, Annotate and Edit PDF
PDF Protection. • Sign PDF document with signature. • Erase PDF text. • Erase PDF images. • Erase PDF pages. Miscellaneous. • Select PDF text on viewer.
remove text from pdf reader; how to delete text in pdf document
4.7  Chinese, Japanese, and Korean Text 103
Note Some PDFlib functions change their semantics according to the writing mode. For example, 
PDF_continue_text( ) should not be used in vertical writing mode, and the character spacing 
must be negative in order to spread characters apart in vertical writing mode.
CJK text encoding for standard CMaps. The client is responsible for supplying text en-
coded such that it matches the requested CMap. PDFlib does not check whether the sup-
plied text conforms to the requested CMap.
For multi-byte encodings, the high-order byte of a character must appear first. Alter-
natively, the byte ordering and text format can be selected with the textformat parame-
ter (see Section 4.5.1, »Unicode for Page Descriptions«, page 90) provided a UCS2-based 
CMap 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.
Restrictions for standard CJK fonts and CMaps. The following features are not sup-
ported for standard CJK fonts in combination with CMaps other than UCS2:
>calculating the extent of text with PDF_stringwidth( ) (but see Section 4.7.4, »Forcing 
monospaced Fonts«, page 105)
>box formatting with PDF_show_boxed( ) (doesn’t work with any standard CMap, even 
UCS2)
>activating underline/overline/strikeout mode
>retrieving the textx/texty position
These restrictions hold for standard CJK fonts. Note that although the widths of CJK text 
cannot be queried in these cases, the width will nevertheless be generated correctly in 
the PDF output. Also note the above features are well supported for custom CJK fonts.
Note The UniJIS-UCS2-HW-H/V CMaps are incorrectly treated as monospaced. This will be fixed in a 
future release.
Note These restrictions will be lifted in a future release. We intend to offer extended support for oth-
er major CJK encodings including SJIS and EUC.
Standard CJK font example. Standard CJK fonts can be selected with the PDF_load_
font( ) interface, supplying the CMap name as the encoding parameter. However, you 
must take into account that a given CJK font supports only a certain set of CMaps (see 
Table 4.5), and that Unicode-aware language bindings support only UCS2-compatible 
CMaps. The KozMinPro-Regular-Acro sample in Table 4.5 can been generated with the fol-
lowing code:
font = PDF_load_font(p, "KozMinPro-Regular-Acro", 0, "UniJIS-UCS2-H", "");
PDF_setfont(p, font, 24);
PDF_set_text_pos(p, 50, 500);
/* We use UTF-16 format with little-endian (LE) byte ordering */
PDF_set_parameter(p, "textformat", "utf16le");
PDF_show(p, "\xE5\x65\x2C\x67\x9E\x8A");
These statements locate one of the Japanese standard fonts, choosing a Shift-JIS-com-
patible CMap (Ext-RKSJ) and horizontal writing mode (H). The fontname parameter must 
C# PDF Text Redact Library: select, redact text content from PDF
code to erase text from adobe PDF file in Visual Studio. NET class without adobe reader installed. Provide a best and easy way to darken text in PDF document in
how to remove highlighted text in pdf; erase text in pdf document
C# HTML5 Viewer: Load, View, Convert, Annotate and Edit PDF
you need to add your own signatures such as logo to PDF document, you and Redact tab on viewer empower users to redact and erase PDF text, erase PDF images and
delete text pdf; how to erase text in pdf online
104
Chapter 4:  Text Handling
be the exact name of the font without any encoding or writing mode suffixes. The 
encoding parameter is the name of one of the supported CMaps (the choice depends on 
the font) and will also indicate the writing mode (see above). PDFlib supports all of Acro-
bat’s default CMaps, and will complain when it detects a mismatch between the re-
quested font and the CMap. For example, PDFlib will reject a request to use a Korean 
font with a Japanese encoding.
4.7.3 Custom CJK Fonts
In addition to Acrobat’s standard CJK fonts PDFlib supports custom CJK fonts (fonts out-
side the list in Table 4.5) in the TrueType (including TrueType Collections, TTC) and 
OpenType formats. A custom CJK font will be processed as follows:
>The font will be converted to a CID font and embedded in the PDF output regardless 
of the embedding setting provided by the client. Since PDFlib respects font embed-
ding restrictions which may be defined in a font, fonts which do not allow embed-
ding can not be used as custom CJK fonts.
>By default, font subsetting will be applied to all embedded custom CJK fonts; this can 
be controlled with various parameters, see Section 4.3, »Font Embedding and Subset-
ting«, page 80.
>Proportional Latin characters and half-width characters are fully supported for cus-
tom CJK fonts.
>Japanese host font names can be supplied to PDF_load_font( ) as UTF-8 with initial 
BOM, or UCS-2.
Note Original Composite Fonts (OCF) and raw PostScript CID fonts are not supported. Windows 
EUDC fonts are supported.
Supported encodings for custom CJK fonts. Custom CJK fonts can be used with the fol-
lowing encodings:
>unicode encoding.
>8-bit encodings (although these are unlikely to be useful for CJK text)
>glyphid addressing (see Section 4.4.3, »Glyph ID Addressing for TrueType and Open-
Type Fonts«, page 88)
The textformat parameter will be evaluated for custom CJK fonts.
Restrictions for custom CJK fonts. The following features are currently not supported 
for custom CJK fonts:
>Encodings other than those listed above can not be used. In particular, the CMaps 
listed in Table 4.6 can not be used with custom CJK fonts, but only with the standard 
CJK fonts.
>Vertical writing mode is not implemented.
Custom CJK font example. The following example uses the ArialUnicodeMS font to 
display some Chinese text. The font must either be installed on the system or must be 
configured according to Section 4.3.1, »How PDFlib Searches for Fonts«, page 80):
/* This is not required if the font is installed on the system */
PDF_set_parameter(p, "FontOutline", "Arial Unicode MS=ARIALUNI.TTF");
font = PDF_load_font(p, "Arial Unicode MS", 0, "unicode", "");
PDF_setfont(p, font, 24);
C# HTML5 PDF Viewer SDK to view, annotate, create and convert PDF
Able to protect PDF document from editing, printing, copying and commenting by setting PDF file permissions. Help C# users to erase PDF text content, images and
deleting text from a pdf; how to erase pdf text
C# PDF Image Redact Library: redact selected PDF images in C#.net
call our image redaction API to redact PDF images. as text redaction, you can specify custom text to appear How to Erase PDF Images in .NET Using C# Class Code.
how to erase text in pdf file; delete text pdf acrobat professional
4.7  Chinese, Japanese, and Korean Text 105
PDF_set_text_pos(p, x, y);
/* We use UTF-16 format with big-endian (BE) byte ordering */
PDF_set_parameter(p, "textformat", "utf16be");
PDF_show2(p, "\x4e\x00\x50\x0b\x4e\xba", 6);
4.7.4 Forcing monospaced Fonts
Some applications are not prepared to deal with proportional CJK fonts, and calculate 
the extent of text based on a constant glyph width and the number of glyphs. PDFlib 
can be instructed to force monospaced glyphs even for fonts that usually have glyphs 
with varying widths. Use the monospace option of PDF_load_font( ) to specify the desired 
width for all glyphs. For standard CJK fonts the value 1000 will result in pleasing results:
font = PDF_load_font(p, "KozMinPro-Regular-Acro", 0, "UniJIS-UCS2-H", "monospace 1000");
The monospace option is not supported for PDF core fonts (see Section 4.3.2, »Font Em-
bedding«, page 81). For Type 3 fonts the monospace option will modify all glyph widths 
which are different from 0.
Customize, Process Image in .NET Winforms| Online Tutorials
for image & documents rotation; Edit images & documents using Erase Rectangle & More image processing & document clean-up functions. Image Manipulating. This
erase text from pdf file; delete text in pdf file online
.NET Imaging Processing SDK | Process, Manipulate Images
Support over 30 image & document formats; Support 1-bit, 4-bit, and 8-bit Indexed Basic image edit function support, such as Erase Rectangle, Merge Block, etc.
how to erase text in pdf online; how to delete text in a pdf file
106
Chapter 4:  Text Handling
4.8 Placing and Fitting Text
The function PDF_fit_textline( ) for placing a single line of text on a page offers a wealth 
of formatting options. The most important options will be discussed in this section us-
ing some common application examples. A complete description of these options can 
be found in Table 7.10. Most options for PDF_fit_textline( ) are identical to those of PDF_
fit_image( ) . Therefore we will only use text-related examples here; it is recommended 
to take a look at the examples in Section 5.3, »Placing Images and Imported PDF Pages«, 
page 119, for an introduction.
The examples below demonstrate only the relevant call of the function PDF_fit_
textline( ) , assuming that the required font has already been loaded and set in the de-
sired font size.
PDF_fit_textline( ) uses the so-called text box to determine the positioning of the text: 
the width of the text box is identical to the width of the text, and the box height is iden-
tical to the height of capital letters in the font. The text box can be extended to the left 
and right or top and bottom using the margin option. The margin will be scaled along 
with the text line.
4.8.1 Simple Text Placement
Placing text in the bottom center. We place text at the reference point such that the 
text box will be positioned with the center of its bottom line at the reference point (see 
Figure 4.6):
PDF_fit_textline(p, text, 297, 0, "position {50 0}");
This code fragment places the text box with the bottom center (position {50 0}) at the ref-
erence point (297, 0).
Placing text in the top right corner. Now we place the text at the reference point such 
that the text box will be placed with the upper right corner at the reference point (see 
Figure 4.7):
PDF_fit_textline(p, text, 595, 842, "position 100");
Kraxi
Kraxi
Fig. 4.6
Placing text in the
bottom center
Fig. 4.7
Placing text in the upper 
right corner
How to C#: Special Effects
Erase. Set the image to current background color, the background color can be set by:ImageProcess.BackgroundColor = Color.Red. Encipher.
how to delete text in pdf converter; delete text pdf files
4.8  Placing and Fitting Text 107
This code fragment places the text box with the upper right corner (position 100) at the 
reference point (595, 842).
Placing text with a margin. To extend the previous example we can add a horizontal 
margin to the text to achieve a certain distance to the right. This may be useful for plac-
ing text in table columns:
PDF_fit_textline(p, text, 595, 842, "position 100 margin {20 0}");
4.8.2 Placing Text in a Box
Placing centered text in a box. We define a box and place the text centered within the 
box (see Figure 4.8):
PDF_fit_textline(p, text, 10, 200, "boxsize {500 220} position 50");
This code fragment places the text centered (position 50) in a box with the lower left cor-
ner at (10, 200), 500 units wide and 220 units high (boxsize {500 220}). 
Proportionally fitting text to a box. We extend the previous example and fit the text 
into the box completely (see Figure 4.9):
PDF_fit_textline(p, text, 10, 200, "boxsize {500 220} position 50 fitmethod meet");
Note that the font size will be changed when text is fit into the box with fitmethod meet. 
In order to prevent the text from being scaled up use auto instead of meet.
Completely fitting text to a Box. We can further modify the previous example such 
that the text will not be fit into the box proportionally, but completely covers the box. 
However, this combination will only rarely be used since the text may be distorted (see 
Figure 4.10):
PDF_fit_textline(p, text, 10, 200, "boxsize {500 220} position 50 fitmethod entire");
Kraxi
Fig. 4.8
Placing centered text in a 
box
Fig. 4.10
Completely fitting text to a 
box
Kraxi
Kraxi
Fig. 4.9
Proportionally fitting text to 
a box
108
Chapter 4:  Text Handling
4.8.3 Aligning Text
Simple alignment. Our next goal is to rotate text such that its original lower left cor-
ner will be placed at a given reference point (see Figure 4.11). This may be useful, for ex-
ample, for placing a rotated column heading in a table header:
PDF_fit_textline(p, text, 5, 5, "orientate west");
This code fragment orientates the text to the west (90˚ counterclockwise) and then 
translates it the lower left corner of the rotated text to the reference point (5, 5).
Aligning text at a vertical line. Positioning text along a vertical line (i.e., a box with 
zero width) is a somewhat extreme case which may be useful nevertheless (see Figure 
4.12):
PDF_fit_textline(p, text, 0, 0, "boxsize {0 600} position {0 50} orientate west");
This code fragment rotates the text, and places it at the center of the line from (0, 0) to 
(0, 600).
Kraxi
Kraxi
Fig. 4.11
Simple Aligning
Fig. 4.12
Aligning text at a vertical line
5.1  Importing Raster Images 109
5Importing and Placing Objects
PDFlib offers a variety of features for importing raster images and pages from existing 
PDF documents, and placing them on the page. This chapter covers the details of deal-
ing with raster images and importing pages from existing PDF documents. It also pre-
sents samples which demonstrate how to place images and PDF pages on an output 
page.
5.1 Importing Raster Images
5.1.1 Basic Image Handling
Embedding raster images with PDFlib is easy to accomplish. First, the image file has to 
be opened with a PDFlib function which does a brief analysis of the image parameters. 
The PDF_load_image( ) function returns a handle which serves as an image descriptor. 
This handle can be used in a call to PDF_fit_image( ), along with positioning and scaling 
parameters:
if ((image = PDF_load_image(p, "jpeg", "image.jpg", 0, "")) == -1) {
fprintf(stderr,"Error: Couldn't read image file.\n");
} else {
PDF_fit_image(p, image, 0.0, 0.0, "");
PDF_close_image(p, image);
}
The last argument to PDF_fit_image( ) is an option list which supports a variety of op-
tions for positioning, scaling, and rotating the image. Details regarding these options 
are discussed in Section 5.3, »Placing Images and Imported PDF Pages«, page 119.
Re-using image data. PDFlib supports an important PDF optimization technique for 
using repeated raster images. Consider a layout with a constant logo or background on 
multiple pages. In this situation it is possible to include the actual image data only once 
in the PDF, and generate only a reference on each of the pages where the image is used. 
Simply load the image file once, and call PDF_fit_image( ) every time you want to place 
the logo or background on a particular page. You can place the image on multiple pages, 
or use different scaling factors for different occurrences of the same image (as long as 
the image hasn’t been closed). Depending on the image’s size and the number of occur-
rences, this technique can result in enormous space savings.
Inline images. As opposed to reusable images, which are written to the PDF output as 
image XObjects, inline images are written directly into the respective content stream 
(page, pattern, template, or glyph description) . This results in some space savings, but 
should only be used for small amounts of image data (up to 4 KB) per a recommenda-
tion in the PDF reference. The primary use of inline images is for bitmap glyph descrip-
tions in Type 3 fonts.
Inline images can be generated with the PDF_load_image( ) interface by supplying the 
inline option. Inline images cannot be reused, i.e., the corresponding handle must not be 
supplied to any call which accepts image handles. For this reason if the inline option has 
been provided PDF_load_image( ) internally performs the equivalent of
110
Chapter 5:  Importing and Placing Objects
PDF_fit_image(p, image, 0, 0, "");
PDF_close_image(p, image);
Scaling and dpi calculations. PDFlib never changes the number of pixels in an import-
ed image. Scaling either blows up or shrinks image pixels, but doesn’t do any downsam-
pling (the number of pixels in an image will always remain the same). A scaling factor of 
1 results in a pixel size of 1 unit in user coordinates. In other words, the image will be im-
ported at 72 dpi if the user coordinate system hasn’t been scaled (since there are 72 de-
fault units to an inch).
5.1.2 Supported Image File Formats
PDFlib deals with the image file formats described below. If possible, PDFlib passes the 
compressed image data unchanged to the PDF output since PDF internally supports 
most compression schemes used in common image file formats. This technique (called 
pass-through mode in the descriptions below) results in very fast image import, since de-
compressing the image data and subsequent recompression are not necessary. How-
ever, PDFlib cannot check the integrity of the compressed image data in this mode. In-
complete or corrupt image data may result in error or warning messages when using 
the PDF document in Acrobat (e.g., Read less image data than expected).
If an image file can’t be imported successfully PDF_load_image( ) will return an error 
code by default. However, if you need to know more details about the failure set the 
imagewarning option in PDF_load_image( ) to true (see Section 7.6, »Image and Template 
Functions«, page 185). Alternatively, the imagewarning parameter can be set on a global 
basis:
PDF_set_parameter(p, "imagewarning", "true");
/* enable image warnings */
This will cause PDF_load_image( ) to raise an exception with more details about the fail-
ure in the corresponding exception message.
PNG images. PDFlib supports all flavors of PNG images (Portable Network Graphics). 
PNG images are handled in pass-through mode in most cases. PNG images which make 
use of interlacing, contain an alpha channel (which will be lost anyway, see below), or 
have 16 bit color depth will have to be uncompressed, which takes significantly longer 
than pass-through mode. If a PNG image contains transparency information, the trans-
parency is retained in the generated PDF (see Section 5.1.3, »Image Masks and Transpar-
ency«, page 112). However, alpha channels are not supported by PDFlib.
JPEG images. JPEG images are always handled in pass-through mode. PDFlib supports 
the following flavors of JPEG image compression:
>Baseline JPEG compression which accounts for the vast majority of JPEG images.
>Progressive JPEG compression.
JPEG images can be packaged in several different file formats. PDFlib supports all com-
mon JPEG file formats, and will read resolution information from the following flavors:
>JFIF, which is generated by a wide variety of imaging applications.
>JPEG files written by Adobe Photoshop and other Adobe applications. PDFlib applies 
a workaround which is necessary to correctly process Photoshop-generated CMYK 
JPEG files.
Documents you may be interested
Documents you may be interested