pdf viewer in mvc c# : Copy and paste image from pdf to pdf control Library platform web page .net asp.net web browser TET-4.2-manual12-part1731

8.6  Restrictions and Caveats 121
8.6 Restrictions and Caveats
Image color fidelity. TET does not degrade image quality when extracting images:
>Raster images are never downsampled.
>The color space of an image will be retained in the output. TET never applies any 
CMYK-to-RGB or similar color conversion.
>The number of color components will always be unchanged. For example, RGB imag-
es will not be changed to grayscale if they contain only gray colors.
Image workarounds. In some situations the color appearance of the extracted image 
may be different from the visual appearance of the PDF page. While the image shape is 
preserved, the colors may appear different because of the following reasons:
>Image masks are applied.
>Colorized grayscale images are extracted without the color, but as grayscale images.
>Since DeviceN color is not supported in TIFF, images with the DeviceN colorspace are 
extracted as grayscale, RGB, or CMYK images for N=1, 3, and 4, respectively. For N>4 
CMYK TIFF images with one or more alpha channels are generated.
>Images with Separation colorspace are extracted as grayscale images. The spot color 
used to colorize the image will be lost.
>Images with Indexed ICCBased colorspace: the ICC profile will be ignored.
Unexpected results when extracting images. In some cases the shape of extracted im-
ages may appear different from the PDF page:
>Images may appear mirrored horizontally (upside down) or vertically. This is caused 
by the fact that TET extracts the original pixel data of the image, without respect to 
any transformation which may have been applied to the image on the PDF page.
>Since image masks are ignored, masking effects will not be reflected in the extracted 
image.
Unsupported image types. The following types of PDF images can not be extracted, i.e. 
TET_write_image_file() returns -1 in these cases:
>PDF inline images: this is a rare flavor of PDF images which is sometimes used for 
small raster images.
>Images with Indexed Lab colorspace.
Copy and paste image from pdf to pdf - copy, paste, cut PDF images in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Detailed tutorial for copying, pasting, and cutting image in PDF page using C# class code
how to copy pictures from a pdf; copy paste image pdf
Copy and paste image from pdf to pdf - VB.NET PDF copy, paste image library: copy, paste, cut PDF images in vb.net, ASP.NET, MVC, Ajax, WinForms, WPF
VB.NET Tutorial for How to Cut or Copy an Image from One Page and Paste to Another
copy image from pdf reader; copy a picture from pdf to word
C# PDF Image Extract Library: Select, copy, paste PDF images in C#
How to C#: Extract Image from PDF Document. List<PDFImage> allImages = PDFImageHandler. ExtractImages(page); C#: Select An Image from PDF Page by Position.
how to copy pdf image to word; copying image from pdf to word
C# PDF Page Extract Library: copy, paste, cut PDF pages in C#.net
C#.NET PDF Library - Copy and Paste PDF Pages in C#.NET. Easy to C#.NET Sample Code: Copy and Paste PDF Pages Using C#.NET. C# programming
how to copy an image from a pdf in preview; paste image into pdf
9.1  Creating TETML 123
9TET Markup Language (TETML)
9.1 Creating TETML
As an alternative to supplying the contents of a PDF document via a programming in-
terface, TET can create XML output which represents the same information. We refer to 
the XML output created by TET as TET Markup Language (TETML). TETML contains the 
text contents of the PDF pages plus optional information such as text position, font, 
font size, etc. If TET detects table-like structures on the page the tables will be expressed 
in TETML as a hierarchy of table, row, and cell elements. Note that table information is 
not available via the TET programming interface, but only through TETML. TETML also 
contains information about images and colorspaces.
You can convert PDF documents to TETML with the TET command-line tool or the 
TET library. In both cases there are various options available for controlling details of 
TETML generation.
Creating TETML with the TET command-line tool. Using the TET command-line tool 
you can generate TETML output with the --tetml option. The following command will 
create a TETML output document file.tetml:
tet --tetml word file.pdf
You can use various options to convert only some pages of the document, supply pro-
cessing options, etc. Refer to Section 2.1, »Command-Line Options«, page 17, for more de-
tails.
Creating TETML with the TET library. Using a simple sequence of API calls you can gen-
erate TETML output with the TET library. The tetml sample program demonstrates the 
canonical sequence for programmatically generating TETML. This sample program is 
available in all supported language bindings.
TETML output can be generated on a disk file or in memory. The generated TETML 
stream can be parsed into a XML tree using the XML support provided by most modern 
programming languages. Processing the TETML tree is also demonstrated in the tetml 
sample programs.
What’s included in TETML? TETML output is encoded in UTF-8 (on zSeries with USS or 
MVS: EBCDIC-UTF-8, see www.unicode.org/reports/tr16), and includes the following infor-
mation (some of these items are optional):
>general document information; encryption status, PDF standards, Tagged PDF etc.
>document info fields and XMP metadata
>text contents of each page (words or paragraphs; optionally lines)
>font and geometry for the glyph (font name, size, coordinates)
>layout attributes for the glyph (sub/superscript, dropcap, shadow)
>hyphenation attributes
>structure information, e.g. tables
>information about placed images on the page
>resource information, i.e. fonts, colorspaces, and images
>error messages if an exception occurred during PDF processing
VB.NET PDF Image Extract Library: Select, copy, paste PDF images
VB.NET PDF - Extract Image from PDF Document in VB.NET. Support PDF VB.NET : Select An Image from PDF Page by Position. Sample for
how to copy and paste a pdf image; preview paste image into pdf
VB.NET PDF Page Extract Library: copy, paste, cut PDF pages in vb.
VB.NET DLLs: Extract, Copy and Paste PDF Page. Dim page As PDFPage = doc.GetPage(3) ' Select image by the point (50F, 100F).
how to copy an image from a pdf; paste jpg into pdf
124
Chapter 9:  TET Markup Language (TETML)
Various elements and attributes in TETML are optional. See Section 9.2, »Controlling 
TETML Details«, page 127, for details.
TETML examples. The following shortened document shows the most important parts 
of a TETML document:
<?xml version="1.0" encoding="UTF-8"?>
<!-- Created by the PDFlib Text Extraction Toolkit TET (www.pdflib.com) -->
<TET xmlns="http://www.pdflib.com/XML/TET3/TET-3.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.pdflib.com/XML/TET3/TET-3.0
http://www.pdflib.com/XML/TET3/TET-3.0.xsd"
version="4.2">
<Creation platform="Linux-x86_64" tetVersion="4.2" date="2013-01-27T11:16:43+01:00" />
<Document filename="FontReporter.pdf" pageCount="9" filesize="132437" linearized="true"
pdfVersion="1.6">
<DocInfo>
<Author>PDFlib GmbH</Author>
<CreationDate>2010-07-06T22:51:50+00:00</CreationDate>
<Creator>FrameMaker 7.0</Creator>
<ModDate>2010-07-06T23:07:59+02:00</ModDate>
<Producer>Acrobat Distiller 9.3.3 (Windows)</Producer>
<Subject>PDFlib FontReporter</Subject>
<Title>PDFlib FontReporter Manual</Title>
</DocInfo>
<Metadata>
<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 4.2.1-c043 52.372728, 2009/
01/18-15:08:04        ">
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
...XMP metadata...
</rdf:RDF>
</x:xmpmeta>
</Metadata>
<Options>tetml={} </Options>
<Pages>
<Page number="1" width="485" height="714">
<Options>tetml={} granularity=word </Options>
<Content granularity="word" dehyphenation="false" dropcap="false" font="false" 
geometry="false" shadow="false" sub="false" sup="false">
<Para>
<Word>
<Text>FontReporter</Text>
<Box llx="28.32" lly="613.53" urx="214.98" ury="643.53"/>
</Word>
</Para>
<Para>
<Word>
<Text>Version</Text>
<Box llx="28.32" lly="582.87" urx="100.24" ury="604.83"/>
</Word>
<Word>
<Text>1.4</Text>
<Box llx="105.05" lly="582.87" urx="128.79" ury="604.83"/>
</Word>
</Para>
...more page content...
</Content>
</Page>
VB.NET PDF insert image library: insert images into PDF in vb.net
VB.NET PDF - Add Image to PDF Page in VB.NET. Insert Image to PDF Page Using VB. Add necessary references: RasterEdge.Imaging.Basic.dll.
cut and paste pdf images; how to cut image from pdf
C# Create PDF from images Library to convert Jpeg, png images to
Best and professional C# image to PDF converter SDK for Visual Studio .NET. C#.NET Example: Convert One Image to PDF in Visual C# .NET Class.
how to copy image from pdf to word; copying images from pdf files
9.1  Creating TETML 125
...more pages...
<Resources>
<Fonts>
<Font id="F0" name="PDFlibLogo-Regular" fullname="MMOHKN+PDFlibLogo-Regular"
type="TrueType" embedded="true" ascender="1000" capheight="700" italicangle="0"
descender="0" weight="400" xheight="500"/>
<Font id="F1" name="ThesisAntiqua-Bold" fullname="MMOHKO+ThesisAntiqua-Bold"
type="Type 1 CFF" embedded="true" ascender="741" capheight="679" italicangle="0"
descender="-250" weight="606" xheight="505"/>
...more fonts...
</Fonts>
<Images>
<Image id="I0" extractedAs=".tif" width="595" height="750" colorspace="CS3"
bitsPerComponent="8"/>
<Image id="I1" extractedAs=".tif" width="595" height="750" colorspace="CS3"
bitsPerComponent="8"/>
</Images>
<ColorSpaces>
<ColorSpace id="CS0" name="DeviceGray" components="1"/>
<ColorSpace id="CS1" name="DeviceCMYK" components="4"/>
...more color spaces...
</ColorSpaces>
</Resources>
</Pages>
</Document>
</TET>
Depending on the selected TETML mode more details can be expressed in TETML. TETML 
modes are discussed in more detail in »Selecting the text mode«, page 127; here is a vari-
ation of the sample above with more glyph details. The Glyph element contains font and 
position information:
<Word>
<Text>PDFlib</Text>
<Box llx="111.48" lly="636.33" urx="161.14" ury="654.33">
<Glyph font="F1" size="18" x="111.48" y="636.33" width="9.65">P</Glyph>
<Glyph font="F1" size="18" x="121.12" y="636.33" width="11.88">D</Glyph>
<Glyph font="F1" size="18" x="133.00" y="636.33" width="8.33">F</Glyph>
<Glyph font="F1" size="18" x="141.33" y="636.33" width="4.88">l</Glyph>
<Glyph font="F1" size="18" x="146.21" y="636.33" width="4.88">i</Glyph>
<Glyph font="F1" size="18" x="151.08" y="636.33" width="10.06">b</Glyph>
</Box>
</Word>
<Word>
<Text>GmbH</Text>
<Box llx="165.06" lly="636.33" urx="214.84" ury="654.33">
<Glyph font="F1" size="18" x="165.06" y="636.33" width="12.06">G</Glyph>
<Glyph font="F1" size="18" x="177.12" y="636.33" width="15.44">m</Glyph>
<Glyph font="F1" size="18" x="192.56" y="636.33" width="10.06">b</Glyph>
<Glyph font="F1" size="18" x="202.61" y="636.33" width="12.22">H</Glyph>
</Box>
</Word>
<Word>
<Text>München</Text>
<Box llx="218.75" lly="636.33" urx="292.23" ury="654.33">
<Glyph font="F1" size="18" x="218.75" y="636.33" width="15.77">M</Glyph>
<Glyph font="F1" size="18" x="234.52" y="636.33" width="10.19">ü</Glyph>
<Glyph font="F1" size="18" x="244.70" y="636.33" width="10.22">n</Glyph>
C# PDF Library SDK to view, edit, convert, process PDF file for C#
load PDF from other file formats; merge, append, and split PDF files; insert, delete, move, rotate, copy and paste PDF file page. C#.NET: Process PDF Image.
copy pdf picture; how to copy image from pdf file
C# PDF remove image library: remove, delete images from PDF in C#.
Text: Replace Text in PDF. Image: Insert Image to PDF. Image: Remove Image from PDF Page. Image: Copy, Paste, Cut Image in Page. Link: Edit URL. Bookmark: Edit
copy pdf picture to powerpoint; copy picture from pdf reader
126
Chapter 9:  TET Markup Language (TETML)
<Glyph font="F1" size="18" x="254.92" y="636.33" width="7.52">c</Glyph>
<Glyph font="F1" size="18" x="262.44" y="636.33" width="10.22">h</Glyph>
<Glyph font="F1" size="18" x="272.66" y="636.33" width="9.34">e</Glyph>
<Glyph font="F1" size="18" x="282.00" y="636.33" width="10.22">n</Glyph>
</Box>
</Word>
9.2  Controlling TETML Details 127
9.2 Controlling TETML Details
TETML text modes. TETML can be generated in various text modes which include dif-
ferent amounts of font and geometry information, and differ regarding the grouping of 
text into larger units (granularity). The text mode can be specified individually for each 
page. However, in most situations TETML files will contain the data for all pages in the 
same mode. The following text modes are available:
>Glyph mode is a low-level flavor which includes the text, font, and coordinates for 
each glyph, without any word grouping or structure information. It is intended for 
debugging and analysis purposes since it represents the original text information on 
the page.
>Word mode groups text into words and adds Box elements with the coordinates of 
each word. No font information is available. This mode is suitable for applications 
which operate on word basis. Punctuation characters will by default be treated as in-
dividual words, but this behavior can be changed with a page option (see »Word 
boundary detection for Western text«, page 85). Lines of text can optionally be iden-
tified with the Line element; this is controlled via the tetml page option.
>Wordplus mode is similar to word mode, but adds font and coordinate details for all 
glyphs in a word. The coordinates are expressed relative to the lower left or upper 
left corner subject to the topdown page option. Wordplus mode makes it possible to 
analyze font usage and track changes of font, font size, etc. within a word. Since 
wordplus is the only text mode which contains all relevant TETML elements it is suit-
ed for all kinds of processing tasks. On the other hand, it creates the largest amount 
of output due to the wealth of information contained in the TETML.
>Line mode includes all text which comprises a line in a separate Line element. In addi-
tion, multiple lines may be grouped in a Para element. Line mode is recommended 
only in situations where the page content is known to be grouped into lines, or the 
receiving application can only deal with line-based text input.
>Page mode includes structure information starting at the paragraph level, but does 
not include any font or coordinate details.
Table 9.1 lists the TETML elements which are present in the text modes.
Selecting the text mode. With the TET command-line tool (see Section 2.1, »Com-
mand-Line Options«, page 17) you can specify the desired page mode as a parameter for 
the --tetml option. The following command generates TETML output in wordplus mode:
Table 9.1 TETML elements in various text mode
text mode
structure
tables
text position 
text details
glyph
Glyph
word
Para, Word
optionally: Line
Table, Row, Cell
Box
wordplus
Para, Word
optionally: Line
Table, Row, Cell
Box
Glyph
line
Para, Line
page
Para
Table, Row, Cell
128
Chapter 9:  TET Markup Language (TETML)
tet --tetml wordplus file.pdf
With the TET library the text mode cannot be specified directly, but as a combination of 
options:
>You can specify the amount of text in the smallest element with the granularity op-
tion of TET_process_page( ).
>For granularity=glyph or word you can additionally specify the amount of glyph de-
tails. With the glyphdetails suboption of the tetml option you can omit some parts of 
the glyph information if you don’t need it.
The following page option list generates TETML output in wordplus mode with all glyph 
details:
granularity=word tetml={ glyphdetails={all} }
Table 9.2 summarizes the options for creating page modes.
Document options for controlling TETML output. In this section we will summarize the 
effect of various options which directly control the generated TETML output. All other 
document options can be used to control processing details. The complete description 
of document options can be found in Table 10.8.
Document-related options must be supplied to the --docopt command-line option or 
to the TET_open_document( ) function.
The tetml option controls general aspects of TETML. The elements suboption can be 
used to suppress certain TETML elements if they are not required. The following docu-
ment option list will suppress document-level XMP metadata in the generated TETML 
output:
tetml={ elements={nodocxmp} }
The skipengines option can be used to disable the text and image extraction engines. The 
following option list instructs TET to process text contents, but disable image process-
ing:
skipengines={image}
Table 9.2 Creating TETML text modes with the TET library
text mode
granularity option of
TET_process_page()
tetml option of TET_process_page( )
glyph
granularity=glyph
tetml={glyphdetails={all}}
word
granularity=word
wordplus
granularity=word
tetml={glyphdetails={all}}
word with Line 
elements
granularity=word
tetml={elements={line}}
wordplus with Line 
elements
granularity=word
tetml={glyphdetails={all} elements={line}}
line
granularity=line
page
granularity=page
9.2  Controlling TETML Details 129
All document options which have been supplied when creating TETML will be recorded 
in the /TET/Document/Options element unless disabled with the following document op-
tion:
tetml={ elements={nooptions} }
Page options for controlling TETML output. The complete description of page options 
can be found in Table 10.10. Page-related options must be supplied to the --pageopt com-
mand-line option or to the TET_process_page( ) function.
The tetml option enables or disables coordinate- and font-related information in the 
Glyph element. The following page option list enables font details in the Glyph element, 
but suppresses other glyph attributes:
tetml={ glyphdetails={font} }
The following page option list adds Line elements to the TETML output:
tetml={ glyphdetails={font} elements={line} }
The following page option adds sub and sup attributes to the Glyph element to designate 
subscripts and superscripts:
tetml={ glyphdetails={sub sup} }
The following page option uses all to generate all possible attributes to the Glyph ele-
ment:
tetml={ glyphdetails={all} }
The following page option requests topdown coordinates instead of the default bottom-
up coordinates:
topdown={output}
The following page option list instructs TET to combine punctuation characters with 
the adjacent words, i.e. punctuation characters are no longer treated as individual 
words:
contentanalysis={nopunctuationbreaks}
The following page option makes sense only for page mode. It changes the default sep-
arator character from linefeed to space:
contentanalysis={lineseparator=U+0020}
All page options which have been supplied when creating TETML will be recorded in the 
/TET/Document/Pages/Page/Options elements (individually for each page) unless dis-
abled with the following document option:
tetml={ elements={nooptions} }
Exception handling. If an error happens during PDF parsing TET will generally try to 
repair or ignore the problem if possible, or throw an exception otherwise. However, 
when generating TETML output with TET PDF parsing problems will usually be reported 
as an Exception element in the TETML:
130
Chapter 9:  TET Markup Language (TETML)
<Exception errnum="4506">Object ’objects[49]/Subtype’ does not exist</Exception>
Applications should be prepared to deal with Exception elements instead of the expected 
elements when processing TETML output.
Problems which prevent the generation of the TETML output file (e.g. no write per-
mission for the output file) will still trigger an exception, and no valid TETML output 
will be created.
Documents you may be interested
Documents you may be interested