IbexPDFCreator
DevelopersGuide
TextFormatting
55
Anumericsize
The most common approach is to specify the size you want in points, for example
font-size="12pt" or font-size="30pt".
An absolute size
AttributeValue
Size
xx-small
7.0pt
x-small
8.3pt
small
10.0pt
medium
12.0pt
large
14.4pt
x-large
17.4pt
xx-large
20.7pt
Arelative size
This sets the font sizebased on the sizeof the prevailing font.
AttributeValue
Size
smaller
existing size / 1.2
larger
existing size *1.2
Another way of setting the font size relative to the current font size is to use the "em"
unit. "1.0em" is the current font size, so "2.0em" specifies a size which is twice as big as
the current size.
9.6 Underlining text
Textis underlined using thetext-decoration attribute.
Specifying text-decoration="underline" willcause textto be underlined, like this.
9.7 Striking out text
You can strike outtext using the text-decoration attribute.
Specifying text-decoration="line-through" will cause text to be underlined, like this.
9.8 Horizontal alignment
Horizontal alignment is specified using thetext-align attribute. The default alignment is
left.
Valid values for text-align are shown in the table below.
Value
Effect
left
text is aligned against theleft edge of the block
right
text is aligned against therightedgeof theblock
How to convert pdf to tiff in - software application dll:C# PDF Convert to Tiff SDK: Convert PDF to tiff images in C#.net, ASP.NET MVC, Ajax, WinForms, WPF
Online C# Tutorial for How to Convert PDF File to Tiff Image File
www.rasteredge.com
How to convert pdf to tiff in - software application dll:VB.NET PDF Convert to Tiff SDK: Convert PDF to tiff images in vb.net, ASP.NET MVC, Ajax, WinForms, WPF
Free VB.NET Guide to Render and Convert PDF Document to TIFF
www.rasteredge.com
Ibex PDF Creator
Developers Guide
56
Text Formatting
Value
Effect
center
text is centered in themiddle of the block
justify
text is aligned against both the left and right edges of the block.
Space is inserted between words to achieve this effect. Setting
text-align = "justify" does not align the last line of the paragraph,
this is doneusing text-align-last ="justify".
start
text is aligned against the start edge, which for a block that is not
rotated, with the default left-to-right writing direction, is the left
edge.
end
text is aligned against the end edge, which for a block that is not
rotated, with the default left-to-right writing direction, is the right
edge.
inside
assuming the document is to be bound as a book, text is aligned
against the edge which is nearest the binding. For an
odd-numbered page this will be the left edge, for an even
numbered page itwillbethe right edge.
outside
assuming the document is to be bound as a book, text is aligned
against the edge which is furtherest from the binding. For an
odd-numbered page this will be the right edge, for an even
numbered page itwillbethe leftedge.
For text-align values of "inside" and "outside" the page number is used to determine the
binding edge, which is assumed to be the left hand edge of odd-numbered pages and
the right hand edgeof even-numbered pages.
Theeffectof some of the text-align values is shown in Figure9-9.
Figure9-9:
Effects of text-align
values
This paragraph has no text-align attribute, so by default
is aligned to the left, so that the words form a smooth
line against the left margin and a ragged edge on the
right.
This paragraph has text-align="right" and so is aligned to
the right, so that the words form a smooth line against
the right margin and have a ragged edge on the left.
This paragraph has text-align="justify", so that the words
form a smooth
line against
both the
left and right
margins,
except
for
the
last
line
which
is
aligned
independently using the text-align-last attribute.
This paragraph has text-align="center", so that the words
are centered in the middle of the block.
9.8.1 Justifying the last line of a paragraph
Specifying text-align="justify" will justify all lines of a paragraph except the last. This is
because a justified paragraph typically looks like the one in Figure 9-10, with the last line
not being justified.
software application dll:Online Convert PDF file to Tiff. Best free online PDF Tif
Using this .NET PDF to TIFF conversion control, C# developers can render and convert PDF document to TIFF image file with no loss in original file quality.
www.rasteredge.com
software application dll:Online Convert PDF file to Word. Best free online PDF Conversion
Download Free Trial. Convert a Tiff/Tif File to PDF. Easy converting! We try to make it as easy as possible to convert your Tiff/Tif files to PDF.
www.rasteredge.com
Ibex PDF Creator
Developers Guide
Text Formatting
57
Figure 9-10:
Paragraphwithout
thelastline justified
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Nunc mollis, turpis
vehicula aliquam auctor, metus turpis tempus justo, eu gravida nisl nibh vitae nisl.
Cras a nisl. Integer et metus vitae dui placerat egestas. Duis rutrum. Nulla in
enim. Suspendisse vel massa in mauris sagittis pharetra. Etiam hendrerit euismod
velit. Ut laoreet lectus nec nisl.
The text-align-lastattribute controls the alignment of the lastline of a paragraph. Values
include are shown in the tablebelow:
Value
Effect
relative
if text-align is "justify", align the last line against the start edge
(normally the left edge), otherwise use the setting if the text-align
attribute.
left
text is aligned against theleft edge of the block
right
text is aligned against therightedgeof theblock
start
text is aligned against the start edge, which for a block that is not
rotated, with the default left-to-right writing direction, is the left
edge.
end
text is aligned against the end edge, which for a block that is not
rotated, with the default left-to-right writing direction, is the right
edge.
inside
assuming the document is to be bound as a book, text is aligned
against the edge which is nearest the binding. For an
odd-numbered page this will be the left edge, for an even
numbered page itwillbethe right edge.
outside
assuming the document is to be bound as a book, text is aligned
against the edge which is furtherest from the binding. For an
odd-numbered page this will be the right edge, for an even
numbered page itwillbethe leftedge.
justify
justify the last line across thewhole width of page.
9.9 Left and right margins
Themargins of ablockare specified using themargin-leftandmargin-rightattributes.
The margin properties indent the edge of the paragraph by the specified amount from
the edgeof thecontaining area.
TheFO for a block with a 2.5cm leftmargin is shown in Figure 9-11.
Figure 9-11:
Setting the left
margin
<block margin-left="2.5cm">hello world</block>
If we nest another block inside this one, as shown in Figure 9-12, the margins are
cumulative. The output from this FO is shown in Figure 9-13.
software application dll:Online Convert Excel to PDF file. Best free online export xlsx
Download Free Trial. Convert a Excel File to PDF. Easy converting! We try to make it as easy as possible to convert your xlsx/xls files to PDF.
www.rasteredge.com
software application dll:C# Create PDF from Tiff Library to convert tif images to PDF in C#
filePath). Description: Convert to PDF/TIFF with specified zoom value and save it on the disk. Parameters: Name, Description, Valid Value.
www.rasteredge.com
Ibex PDF Creator
Developers Guide
58
Text Formatting
Figure 9-12:
Nestedblocks
<block margin-left="2.5cm">
block 1
<block margin-left="2.5cm">
block 2
</block>
</block>
Figure 9-13:
Outputfromthe
above FO
block 1
block 2
Putting background colors on the blocks shows this more clearly. The FO is in
Figure 9-14 and theoutputis in Figure 9-15.
Figure 9-14:
Nestedblocks with
background color
<block margin-left="2.5cm" background-color="#777777">
block 1
<block margin-left="2.5cm"
background-color="#999999">
block 2
</block>
</block>
Figure 9-15:
Outputfrom above
FO
block 1
block 2
The approach to indentation defined in the XSL-FO standard is that the content of two
nested blocks which do not specify a margin have the same left edge. The edges of the
content (which in our example is the text) are aligned, and any borders and padding are
placed outside those edges. Figure 9-16 shows the FO for two nested blocks with no
margin attributes. The text will be vertically aligned and the background colors will be
placed outside thetext. Figure 9-17 shows theresulting output.
Figure 9-16:
Nestedblocks withno
margins specified
<block padding="1cm" background-color="#777777">
block 1
<block padding="1cm" background-color="#999999">
block 2
</block>
</block>
Figure9-17:
Outputfrom
nestedblocks
withno
margins
block 1
block 2
In XSL-FO terms, both areas have the same start-indent and hence the same content
rectangle, and the padding on the outer block extends outside its content rectangle.
This may seem counter-intuitive to some developers used to the CSS model. You can
invoketheCSSnested areas model by specifying a margin-leftvalue, even "0pt".
software application dll:C# PDF Convert to Jpeg SDK: Convert PDF to JPEG images in C#.net
C# PDF - Convert PDF to JPEG in C#.NET. C#.NET PDF to JPEG Converting & Conversion Control. Convert PDF to JPEG Using C#.NET. Add necessary references:
www.rasteredge.com
software application dll:VB.NET PDF Convert to HTML SDK: Convert PDF to html files in vb.
Convert PDF to HTML. |. Home ›› XDoc.PDF ›› VB.NET PDF: PDF to HTML. Convert PDF to HTML in VB.NET Demo Code. Add necessary references:
www.rasteredge.com
Ibex PDF Creator
Developers Guide
Text Formatting
59
9.10 Spacing between letters
The amountof space between two letters is dependent on the font used. Ibexreads the
TrueType or Type 1 font file and loads the width of each character. Kerning information
which specifies adjustments to the gaps between particular pairs of characters is also
read from the fontfileand used in the textformatting process.
The spacing between letters can be changed using the letter-spacing attribute. Any
valuespecified using this attribute is added to the defaultspacing specified by the font.
Figure 9-18 shows the FO to increase the letter spacing of some text. The resulting textis
shown in Figure 9-19.
Figure 9-18:
Usingletter-spacing
<block letter-spacing="0.2em">WELLINGTON NEW ZEALAND</block>
Figure9-19:
Textformattedusing
letter-spacing
WE L L I N G T O N N E W Z E A L A N D
It is possible to make letters closer than normal using a negative value for letter-spacing.
Example FO for this is shown in Figure 9-20 and the resultin Figure9-21.
Figure 9-20:
Movingletters closer
together
<block letter-spacing="-0.1em">WELLINGTON NEW ZEALAND</block>
Figure 9-21:
Textformattedusing
negative
letter-spacing
WELLINGTON NEW ZEALAND
9.11 Spacing before and after words
Spacing before and after text is specified using thespace-start andspace-end attributes
on theinline element.
The space-start attribute specifies space to appear before text, space-end specifies
space to appear after thetext.
Figure 9-22 shows how to specify a gap between two words. This FO produces a 3cm gap
between thewords as shown in Figure 9-23 .
Figure9-22:
Usingspace-start
<block>
hello <inline space-start="3cm">world</inline>
</block>
Figure9-23:
Outputusing
space-start
hello
world
Space between words is collapsed (i.e. merged) by default. If a word has
space-end="1.0cm" and the following word has space-start="0.5cm", the gap between
software application dll:C# PDF Convert to Word SDK: Convert PDF to Word library in C#.net
DocumentType.DOCX DocumentType.TIFF. zoomValue, The magnification of the original PDF page size. Description: Convert to DOCX/TIFF with specified resolution and
www.rasteredge.com
software application dll:VB.NET PDF Convert to Jpeg SDK: Convert PDF to JPEG images in vb.
PDF from RTF. Create PDF from Text. PDF Export. Convert PDF to Word (.docx). Convert PDF to Tiff. Convert PDF to HTML. Convert PDF to
www.rasteredge.com
Ibex PDF Creator
Developers Guide
60
Text Formatting
the two words will be the larger of the two spaces (i.e. 1.0cm), not the sum. FO showing
this is in Figure 9-24 and theoutputis in Figure 9-25.
Figure 9-24:
FOshowingmerging
ofspaces
<block>
<inline space-end="1cm">hello</inline>
<inline space-start="0.5cm">world</inline>
</block>
Figure 9-25:
The resulting1.0cm
space
hello
world
9.12 Forcing a line break
You can cause a line break in normal text by inserting an empty block element.
Figure 9-26 shows an FO example which does this and Figure 9-27 shows the resulting
output.
Figure 9-26:
Forcinga line break
<block>
this will be line one <block/>this will be line two
</block>
Figure 9-27:
Line break created
withanemptyblock
this will be line one
this will be line two
9.13 Space at the start of a line
Space specified with thespace-start attribute is normally discarded at the start of the
line. To force itto be retained usethespace-start.conditionality attribute.
Figure 9-28 shows two blocks which create two lines. The first block will have no space
at the startof the word. The second block has space-start.conditionality="retain" so the
space specified by the space-start="1cm" will be retained. The output created by this FO
is shown in Figure 9-29.
Figure 9-28:
Usingretain
<block background-color="#eeeeee">
<inline space-start="1cm">
discard
</inline>
</block>
<block background-color="#eeeeee">
<inline space-start="1cm" space-start.conditionality="retain">
retain
</inline>
</block>
Figure 9-29:
Outputfromusing
retain
discard
retain
Ibex PDF Creator
Developers Guide
Text Formatting
61
9.14 Vertical alignment
The verticalalignment of blocks of text within a containingflow orblockis controlled by
thedisplay-align attribute.
Thevertical alignmentof words on a lineis controlled by thevertical-align attribute.
Texton a line is positioned relative to thebaseline, which is shown in Figure 9-30.
By default text sits on the baseline. In the terms of the XSL-FO specification, this is the
alphabetic baseline.
Figure 9-30:
The baseline
baseline
ascender
1/2 leading
descender
1/2 leading
line-height
line height
9.14.1 The effect of subscript and superscript text on line spacing
When calculating the largest characters on this line, we really mean those whose
ascender and descender values are greatest (i.e. futherest from the baseline). When
making this calculation, the value of the line-height-shift-adjustment attribute is
considered. If text is a subscript or superscript and so has abaseline-shift value which
changes its position vertically, this will also change its effective ascender and descender
values. If line-height-shift-adjustment = "consider-shifts" (the default value) then the
baseline-shift amountis taken into accountwhen working out the greatestascender and
descender. If line-height-shift-adjustment = "disregard-shifts" then the effect of the
baseline-shift is ignored. Setting line-height-shift-adjustment = "disregard-shifts" makes
lines stay the same distance apartregardless of subscript and superscript elements.
Ibex PDF Creator
Developers Guide
62
Text Formatting
The effectline-height-shift-adjustment is shown in Figure 9-32; the first two lines are in a
block which has line-height-shift-adjustment= "consider-shifts" and so are further apart
than the second two which are in a block which has line-height-shift-adjustment =
"disregard-shifts":
Figure9-32:
Effectof
disregard-shifts
Specifies a string on which content of cells in a table column will
align (see the section, in the CSS2 Recommendation
2
).
Specifies a string on which content of cells in a table column will
align (see the section, in the CSS2 Recommendation
2
).
9.14.2 The baseline
The baseline is below the top of the text block a distance equal to 1/2 leading +
max(ascender), which places the baseline in the same place for all text elements. This
means that normally text rests on the same baseline regardless of the font size, as
shown in Figure 9-33.
Figure 9-33:
Textonthe baseline
baseline
ascender
1/2 leading
descender
1/2 leading
line-height
The effect of the baseline shift is shown in Figure 9-34, where the "pt" characters are in
an inline elementwith baseline-shift= "5pt".
Figure 9-34:
Effectof baseline shift
ascender
1/2 leading
descender
1/2 leading
line-height
baseline-shift
Ibex PDF Creator
Developers Guide
Text Formatting
63
Font files contain default baseline shift values for superscripted and subscripted text.
Rather than specifying baseline-shift="5pt", you can use the values "super" and "sub".
TheFO to movea word above the current baseline by the defaultamount for the current
font is shown in Figure 9-37 with the resulting outputin Figure 9-38. Using the "sub" and
"super" values is preferable to using specific measurements because it means (a) if you
change the font size of the paragraph you do not have to change all the baseline-shift
values and (b) you getthebaselinesiftthe fontdesigner intended.
Figure 9-37:
Usingthe default
superscript
<block
hello
<inline color="red" baseline-shift="super">
super
</inline>
</block>
Figure 9-38:
Outputfromthe
above FO
hello
super
9.15 Line stacking strategies
XSL-FO uses the line-stacking-strategy attribute to determine how lines are stacked
vertically on a page. The default value of this attribute is "max-height". When the
"max-height" strategy is used the height of a line depends on the height of the
characters or images on that line. The information which follows assumes that this
default value is used. The other values for line-stacking-strategy, namely "font-height"
and "line-height" will produce different results, since the height of the line using these
strategies does notchange when thecontentof thelinechanges.
The leading value is calculated from the line-height and font-size specified for theblock
element which contains thetext. Itis constant for thewhole block and is notaffected by
other values specified on contained within theblock.
The height the line is calculated using "largest" characters found on the line, i.e. the sum
of themax(ascender) and max(descender) values.
9.16 Aligning images
An inline element such asexternal-graphic is treated similarly to a text element. The
heightof theimageis used as the ascender value. The descender value is zero.
This means that by default an image will be positioned on the baseline, as shown in
Figure 9-39 .
Figure 9-39:
Animage onthe
baseline
baseline
ascender
1/2 leading
descender
1/2 leading
line-height
40pt
Ibex PDF Creator
Developers Guide
64
Text Formatting
A large image will contribute a large ascender value to the baseline placement
calculation, butwillstill sit on that baseline as shown in Figure9-40.
Figure 9-40:
Large image on
baseline
baseline
Documents you may be interested
Documents you may be interested