asp.net pdf viewer control free : Create pdf thumbnail image Library SDK component .net asp.net html mvc ibex7-part1776

Fonts
65
Chapter10
Fonts
Ibex supports TrueType and Type 1 (Postscript) fonts. Font information is read from the
registry atruntime, no configuration of fonts is required.
Information on how to list the fonts which Ibex can use can be found in the usage
chapter on page30.
Ibexreads the registry to see which fonts are available. Specifically theentries under
"HKLM\software\microsoft\windows nt\currentversion\fonts" listavailablefonts, and
thoseunder "HKLM\software\microsoft\windows nt\currentversion\fontsubstitutes"list
translations from fontnames to existing fonts. Any of the font names listed in these two
places can be used.
In addition Type 1 font names are read from "HKLM\software\microsoft\windows
nt\currentversion\type 1 installer\type 1 fonts". Only Type 1 fonts that come as a PFM
(metrics) and PFB (binary) pair of files are supported.
10.1 How Ibex uses fonts
Your FO file contains a series of letters. Each of which is stored in thefile as a one or two
byte code pointsuch as 65 for 'A' or 0x8226 for thebulletcharacter.
Ibex reads the TrueType or Type 1 font file and looks in the font to see if the font
supports that particular code point. If it does, then the font maps that code point to a
glyph, which is what gets displayed.
Not all fonts support all code points. For example arial.ttf is 370 KB in size, whereas
arialuni.ttf is 23,000 KB, because arialuni has glyphs for a many more code points that
arial.ttf.
Not all fonts map a code point to the same glyph. Some fonts map code points they do
not support to a glyph such as the squareboxone.
Create pdf thumbnail image - Library SDK component:C# PDF Thumbnail Create SDK: Draw thumbnail images for PDF in C#.net, ASP.NET, MVC, Ajax, WinForms, WPF
Support Thumbnail Generation with Various Options for Quick PDF Navigation
www.rasteredge.com
Create pdf thumbnail image - Library SDK component: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
www.rasteredge.com
66
Fonts
Library SDK component:VB.NET Image: Program for Creating Thumbnail from Documents and
language. It empowers VB developers to create thumbnail from multiple document and image formats, such as PDF, TIFF, GIF, BMP, etc. It
www.rasteredge.com
Library SDK component:How to C#: Generate Thumbnail for Raster
VB.NET How-to, VB.NET PDF, VB.NET Word, VB.NET Excel, VB.NET And generating thumbnail for Raster Image is an easy work. How to Create Thumbnail for Raster in C#.
www.rasteredge.com
Floats
67
Chapter 11
Floats
Thefloat element can be used to position an image or other elements to the side or top
of thepageand cause text to flow around that image.
The paragraph in Figure 11-1 uses twofloat elements to make the image appear on the
leftand rightsides, with the text flowing around the images below them.
Figure 11-1:
Leftand rightfloats
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Duis in
dolor quis lectus cursus condimentum. Vestibulum id nunc vitae dui
semper ultrices. Mauris a mi. Phasellus eu lacus. Pellentesque eu
ligula mattis odio faucibus faucibus. Aliquam sit amet
nunc laoreet tellus ullamcorper malesuada. Vestibulum
ante ipsum primis in faucibus orci luctus et ultrices
posuere cubilia Curae; Cras nec mauris. Proin cursus
tincidunt
leo.
Maecenas
metus
lacus,
imperdiet
fermentum,
blandit
at,
sollicitudin
eu,
sem.
Duis
elementum libero vitae lacus. Curabitur justo. Aliquam erat volutpat.
Maecenas nec nulla in massa consectetuer volutpat. Aenean turpis
nisl, rutrum a, posuere sit amet, varius in, enim. Praesent risus.
Nam volutpat enim eget neque. Maecenas a dui ac felis nonummy sollicitudin. Proin
iaculis. Vestibulum in eros sit amet libero mollis convallis. nunc laoreet tellus
ullamcorper malesuada. Vestibulum ante ipsum primis in faucibus orci luctus et
ultrices posuere
cubilia
Curae; Cras
nec
mauris.
Proin
cursus tincidunt
leo.
Maecenas metus lacus, imperdiet fermentum, blandit at, sollicitudin eu, sem. Duis
elementum libero vitae lacus. Curabitur justo. Aliquam erat volutpat. Maecenas nec
nulla in massa consectetuer volutpat. Aenean turpis nisl, rutrum a, posuere sit
amet, varius in, enim. Praesent risus. Nam volutpat enim eget neque. Maecenas a dui
ac felis nonummy sollicitudin. Proin iaculis. Vestibulum in eros sit amet libero
mollis convallis.
This effect is achieved by having ablock which contains the text and twofloat elements.
The float elements in turn contain a block-container element which has a
inline-progression-dimensionattributedefiningthewidthofthefloatarea.Anyelements
inside the block-container will be in the float area. If ablock-containeris not used within
the floatand the width of the floatcannot be determined, a default configurable value is
used.
TheFO for creating the above is show in Figure 11-2. Figure 11-2 is itself contained inside a
float with float = "before", which will make it appear at the top of the following page.
This technique is used in this manual when we do not want a large example to be split
across page breaks or to interrupt the content. When afloat has float = "before", its
position in the PDF file is not the same as its position in the FO file, in that it will be
moved to the top of the next page and the blocks before and after the float will flow as
if thefloatwas not there.
Theside on which the floatoccurs is specified using thefloat attribute. This can be set to
"left" or "right" to position the float at the side of the page. It can also be set to
"before" to position the floatat the start of the nextpage.
Library SDK component:How to C#: Set Image Thumbnail in C#.NET
VB.NET How-to, VB.NET PDF, VB.NET Word, VB.NET Excel How to C#: Set Image Thumbnail in C#.NET. With XImage.Raster SDK library, you can create an image viewer and
www.rasteredge.com
Library SDK component:How to C#: Generate Thumbnail for Word
Images. Convert Word to ODT. Convert PDF to Word. File: Create, Load a Word File. File: Merge Text Search. Insert Image. Thumbnail Create. Thumbnail Create. |. Home
www.rasteredge.com
Ibex PDF Creator
Developers Guide
68
Floats
Side floats (with float = "left" or float = "right") are closely tied to the block which
contains the float element. If the float element does not fit on the page, then the float
and some or allof thecontaining block will be moved to thefollowing page.This ensures
that the text in the block does not refer to (for example) an image in the float which is
not on the same page as thetext.
11.1 How the float width is calculated
Ibex looks at the content of thefloat element to try and determine how wide the float
should be. If a block-container element is found directly below the float element, and
this block-container has a width attribute, then that determines the width of the float. If
no width can be found, then the width of the float is calculated from by multplying the
containing block width by Settings.SideFloatDefaultWidthPercentage, which defaults to
30%.
Figure 11-2:
FOforfloatexample
<block font-size="1.0em" text-align="justify">
<float float="left">
<block-container inline-progression-dimension="2.5cm">
<block text-align="center">
<external-graphic src="url(ibexorange.jpg)" content-width="50%"
padding="3pt"/>
</block>
</block-container>
</float>
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Duis in dolor quis lectus
cursus condimentum. Vestibulum id nunc vitae
dui semper ultrices. Mauris a mi. Phasellus eu lacus. Pellentesque eu ligula mattis
odio faucibus faucibus. Aliquam sit amet
<float float="right">
<block-container inline-progression-dimension="2.5cm">
<block text-align="center">
<external-graphic src="url(ibexorange.jpg)" content-width="50%"
padding="3pt"/>
</block>
</block-container>
</float>
nunc laoreet tellus ullamcorper malesuada. Vestibulum ante ipsum primis in faucibus
orci luctus et ultrices posuere cubilia Curae; Cras nec mauris. Proin cursus
tincidunt leo. Maecenas metus lacus, imperdiet fermentum, blandit at,
sollicitudin eu, sem. Duis elementum libero vitae lacus. Curabitur justo. Aliquam
erat volutpat. Maecenas nec nulla in massa consectetuer volutpat. Aenean turpis
nisl, rutrum a, posuere sit amet, varius in, enim. Praesent risus. Nam volutpat
enim eget neque. Maecenas a dui ac felis nonummy sollicitudin. Proin iaculis.
Vestibulum in eros sit amet libero mollis convallis. nunc laoreet tellus
ullamcorper malesuada. Vestibulum ante ipsum primis in faucibus orci luctus et
ultrices posuere cubilia Curae; Cras nec mauris. Proin cursus tincidunt leo.
Maecenas metus lacus,imperdiet fermentum, blandit at, sollicitudin eu, sem.
Duis elementum libero vitae lacus. Curabitur justo. Aliquam erat volutpat.
Maecenas nec nulla in massa consectetuer volutpat. Aenean turpis nisl, rutrum a,
posuere sit amet, varius in, enim. Praesent risus. Nam volutpat enim eget neque.
Maecenas a dui ac felis nonummy sollicitudin. Proin iaculis. Vestibulum in eros
sit amet libero mollis convallis.
</block>
Library SDK component:How to C#: Generate Thumbnail for PowerPoint
Conversion. Convert PowerPoint to PDF. Convert PowerPoint File: Create, Load a PowerPoint File. File Annotate PowerPoint. Text Search. Insert Image. Thumbnail Create
www.rasteredge.com
Library SDK component:VB.NET PDF Library SDK to view, edit, convert, process PDF file
In addition, you can easily create, modify, and delete PDF NET guide to learn how to use RasterEdge PDF SDK for You may easily generate thumbnail image from PDF
www.rasteredge.com
Space Handling
69
Chapter 12
Space Handling
XSL-FO defines various attributes for managing whitespace in FO. These allow you to
controlhow linefeeds and whitespaceareoutput.
12.1 Linefeeds and carriage returns
Alinefeed is a character with ASCII code 10, or Unicode code point U+000A. This is
different to a carriage return which has ASCII code 13. Ibex acts on linefeeds, not on
carriagereturns. Carriage returns are ignored during PDF creation.
12.2 Default treatment of linefeeds and spaces
By default linefeeds and whitespace preceding and following linefeeds are removed
during formatting. Figure 12-1 shows FO which has linefeeds at the end of each line. The
resulting output shown in Figure 12-2 has neither linefeeds nor spaces around the text.
This is thedefault treatmentfor textin XSL-FO.
Figure 12-1:
Textwithlinefeeds
andspaces
<block margin='2cm'>To be, or not to be: that is the question:
Whether 'tis nobler in the mind to suffer
The slings and arrows of outrageous fortune,
Or to take arms against a sea of troubles,
</block>
Figure12-2:
Outputwithdefault
handling
To be, or not to be: that is the question: Whether 'tis nobler in the mind to suffer
The slings and arrows of outrageous fortune, Or to take arms against a sea of
troubles,
12.3 Using linefeeds to break text
Thelinefeed-treatment attribute is used to specify the treatment of linefeeds in text.
This defaults to "ignore" causing linefeeds to be ignored. We can retain the linefeeds by
setting the linefeed-treatment attribute to "preserve". Figure 12-3 shows our example
with this attribute added.Figure12-4 shows the outputfrom this FO.
Library SDK component:How to C#: Overview of Using XImage.Raster
Create Thumbnail. See this C# guide to learn how to use RasterEdge XImage SDK for .NET to perform quick file navigation. You may easily generate thumbnail image
www.rasteredge.com
Library SDK component:C# PDF Library SDK to view, edit, convert, process PDF file for C#
You may easily generate thumbnail image from PDF. and added to a specific location on PDF file page. In addition, you can easily create, modify, and delete PDF
www.rasteredge.com
Ibex PDF Creator
Developers Guide
70
Space Handling
Figure 12-3:
Using
linefeed-treatment
<block linefeed-treatment="preserve">To be, or not to be: that is the question:
Whether 'tis nobler in the mind to suffer
The slings and arrows of outrageous fortune,
Or to take arms against a sea of troubles,
</block>
Figure 12-4:
Outputwithlinefeeds
preserved
To be, or not to be: that is the question:
Whether 'tis nobler in the mind to suffer
The slings and arrows of outrageous fortune,
Or to take arms against a sea of troubles,
12.4 Retaining spaces
Thewhite-space-treatmentandwhite-space-collapseattributes are used to control the
handling of spaces.
If wewantto putsome formatted codein our documen, Figure12-5 shows FO for this.
Figure 12-5:
Code example
<block linefeed-treatment="preserve">
private void swap_byte( ref byte x, ref byte y ) {
byte t = x;
x = y;
y = t;
}
</block>
Setting linefeed-treatment = "preserve" we get the output show in Figure 12-6. We have
preserved the linefeeds butallformatting spaces havegone.
Figure 12-6:
Code withlinefeeds
butnospacing
private void swap_byte( ref byte x, ref byte y ) {
byte t = x;
x = y;
y = t;
}
The white-space-collapse attribute controls whether Ibex compresses adjacent white
space characters into a single space. By default any number of adjacent spaces are
compressed into a single space.
Thewhite-space-treatmentattribute controls whether Ibex ignores spaces adjacent to
linefeeds. Setting white-space-treatment = "preserve" makes Ibex retain white space
which appears adjacentto linefeeds.
If we set white-space-treatment to "preserve", and white-space-collapse to "false" we
will retain the white spaces around the linefeeds. The FO for this is shown in Figure 12-7,
and theformatted output is shown in Figure12-8.
Figure 12-7:
FOto retainspaces
andlinefeeds
<block
linefeed-treatment="preserve"
white-space-treatment="preserve"
white-space-collapse="false"
>
private void swap_byte( ref byte x, ref byte y ) {
Ibex PDF Creator
Developers Guide
Space Handling
71
byte t = x;
x = y;
y = t;
}
</block>
Figure 12-8:
Outputwithlinefeeds
butnospacing
private void swap_byte( ref byte x, ref byte y ) {
byte t = x;
x = y;
y = t;
}
12.5 Non-breaking spaces
Unicode defines the code point U+00A0 called NO-BREAK SPACE. This can be used to
insert a space between words without allowing a line break to occur between the
words. Ibextreats two words separated by a U+00A0 as a singleword.
Thenon-breaking space can be inserted into XML using the &#xA0;entity.
The example in Figure 12-9 shows a block used in a table header. It contains the three
words "Score per 100". The default formatting is shown in Figure 12-10. If we want to
move the word "per" to the next line to keep it with the "100", we replace the space
between "per" and "100" with a non-breaking space. This will prevent Ibex breaking the
linebetween the "per" and "100" words.
Figure 12-11 shows the FO with a non-breaking space and Figure 12-12 shows the resulting
output.
Figure 12-9:
FOwithouta
non-breakingspace
<block-container width="2.8cm">
<block border="1pt solid black"
padding="3pt" text-align="center">
Score per 100
</block>
</block-container>
Figure 12-10:
Outputwithouta
non-breakingspace
Score per
100
Figure 12-11:
FOwithnon-breaking
space
<fo:block-container width="2.8cm">
<fo:block border="1pt solid black"
padding="3pt" text-align="center">
Score per&#xA0;100
</fo:block>
</fo:block-container>
Figure12-12:
Outputwitha
non-breakingspace
Score
per 100
72
Space Handling
Colors
73
Chapter 13
Colors
XSL-FO defines various attributes for managing color. By default a block is displayed with
the foreground color (that is the text) being black and the background color being
white.
Colors are most commonly expressed using the RGB color scheme, where there are
three parts to a color: red, green and blue. Ibex also supports the CMYK color scheme
commonly used in theprinting industry.
13.1 Text color
The color of text is specified using the color attribute. Figure 13-1 shows a simple
exampleof some FO to make text blue. Theoutputis shown in Figure13-2.
Figure 13-1:
FOforblue text
<block color="blue">
To be, or not to be: that is the question:
</block>
Figure 13-2:
Blue text
The resulting text will be blue like this
13.2 Background color
The background color of any element is defined using the background-color attribute.
Figure 13-3 shows FO for a block with a gray background. The output from this is shown
in Figure13-4.
Figure 13-3:
FOforgray
background
<block background-color="gray">
To be, or not to be: that is the question:
</block>
Figure 13-4:
Graybackground
The resulting text will have a gray background like this
Ibex PDF Creator
Developers Guide
74
Colors
13.3 Available colors
The value used for the color and background-color attributes can be a predefined color
such as "red", an RGBcolor defined using a hex value such as "#eeffdd" or a CMYK color.
13.3.1 Predefined colors
XSL-FO uses the listof colors defined for HTML 4.0,which contains these values:
aqua
ibex
black
ibex
blue
ibex
fuchsia
ibex
gray
ibex
green
ibex
lime
ibex
maroon
ibex
navy
ibex
olive
ibex
purple
ibex
red
ibex
silver
ibex
teal
ibex
white
ibex
yellow
ibex
13.3.2 Hexadecimal RGB colors
Acolor can be defined as a string of six digits preceded by a "#" character. The first two
digits define the red component of the color, in a range from 0 to 255. The second two
digits define the green component and the last two digits define the blue component.
This is thesameschemefor defining colors as is used in HTML.
13.3.3 CMYK colors
CMYK colors are four-part colors using values for cyan, magenta, yellow and black
respectively. The CMYK system is subtractive, meaning that higher values mean less
color, unlike RGB where higher values mean more color. CMYK colors are used in the
printing industry to define a color which will appear the same across all media. Typically
acolor defined using RGB will not appear exactly the same on the screen and on a
Documents you may be interested
Documents you may be interested