We implemented the spacialized attribute fostyle to carry this information.
Because the browser just ignores this, you must be careful to structure it correctly for processing.
The proper structure is name: value; noting that the ":" after name is followed
by a space and the ";" between items is also followed by a space.
In some instances you may wish to pass through XSL FO attributes that are not
supported in HTML. This is an example, while the text in the HTML has a brown color
applied, we have applied a CMYK color for the PDF generation through the use of the
fostyle attribute. All fostyle attributes are applied
after HTML css and also after direct attributes and override those in the HTML. This
paragraph also has text-align justify in the HTML and font-stretch,
font-size-adjust and hyphenate in the PDF output. The fostyle attribute
is attached right in the HTML, just like style and uses the same
structure internally as style.
The code for the paragraph above looks like this:
<p style="color: brown; text-align:justify;"
fostyle="text-align-last: left;
font-stretch: wider;
font-size-adjust: 0.6;
hyphenate: true;
color: rgb-icc (255, 255, 0, #CMYK, .1, .2, .7, .5);">In some instances ...
Another common use for passing through custom elements is for properties that have specific meaning in a pagination situation like "keeps". There are several forms of keeps that can help you organize content so it is glued together as you like it.
The following are the most commonly used keeps:
keep-together.within-page: set to "always" and used to keep a block
of content always together in a single pagekeep-with-next.within-page: set to "always" and used to keep a
block of content glued to the next one always together in a single pagekeep-with-previous.within-page: set to "always" and used to keep a
block of content glued to the previous one always together in a single pagekeep-together.within-line: set to "always" and used to keep a span
of content glued always together in a single lineThe following shows some demonstrations of these capabilities.
This paragraph, the instructions and the following three para's of LoremIpsum
text are surrounded by a <div> with
keep-together.within-page as always, like
this:
<div fostyle="keep-together.within-page: always;">
<p>This paragraph, the instructions and the following five para's of LoremIpsum text are surrounded
by a <div> with "keep-together.within-page" as "always", like this:</p>...Ea ipsum enim kasd kasd augue ex at sea aliquyam dolores justo esse tempor. Vel sed invidunt sed sit. Nonumy kasd dolor dolor esse clita kasd et kasd nonummy consectetuer nulla diam erat. Erat ipsum iusto amet rebum consetetur vel amet ipsum sit nobis eleifend ut sit dolor suscipit sit diam stet. Aliquam nulla ea. Sit hendrerit dolor sit labore cum feugiat consetetur in dolore duo at amet erat. Accusam labore amet. Amet et et no lorem dolor voluptua magna. Ut eirmod clita vel diam sea congue takimata tincidunt nihil dolore adipiscing vulputate takimata sanctus. Dolore et justo eirmod amet sed sanctus sadipscing ipsum justo kasd facer. Amet blandit no et eos.
Hendrerit invidunt ut no option aliquyam zzril voluptua augue dolore vero doming. Voluptua et at diam sadipscing est accumsan dolore erat ut ea lorem no. Dolore erat eos dolor dolores iriure aliquam stet sit ut sed lobortis magna amet. Magna ea quis et. Dolor sed sadipscing consequat erat dolor et vero accusam qui et te placerat ullamcorper sed tempor. Aliquip sanctus lorem ipsum stet at diam stet est. No ipsum eirmod clita velit dolore sed amet kasd invidunt lobortis duo.
Sit sed sit rebum duo et ea lorem et tincidunt feugiat. Dolores dolor erat esse ipsum accumsan vero. Elitr sadipscing nobis eirmod feugiat. Zzril ut aliquyam dolor accusam amet vulputate consetetur nulla. Stet no consetetur nonumy nonumy gubergren facer rebum sed dolore et ad. Elitr et aliquyam consetetur sit diam. No clita labore voluptua. Diam vero ut ipsum hendrerit et mazim esse eros dolore duis magna justo. Dolore volutpat sit dolor ipsum dolore tempor lorem et facilisi diam sea. Duis est clita sit sed justo ipsum clita lobortis est eu amet.
Vero magna nobis aliquyam erat voluptua et zzril sit iusto hendrerit. Eu ea diam nobis doming aliquyam et id amet lorem delenit dolore et clita ea. Duis amet elitr elitr amet et sit ea diam ipsum lorem enim. Dolor ut invidunt sed est est magna ut ipsum no. Et eos eum at vel diam dolores sanctus gubergren vero tempor dolor commodo ipsum justo.
At sit tempor tation dolores. Ipsum consetetur invidunt amet et takimata sea rebum mazim diam elitr et doming iriure stet duo stet dolores dolor. Kasd dolor laoreet at vel liber elitr invidunt vero eros nobis. Ea ea rebum zzril amet eu magna. Dolore quis euismod facilisis ullamcorper sanctus vero et option sea et sed accusam diam dolor lorem. Commodo diam kasd ea at sanctus. Nonumy et veniam. Euismod nam lorem nulla ea diam accumsan qui amet elitr diam laoreet eum eos est illum.
Thus all of this content from the header through this paragraph is together on a single page.
A common practice in print documents is keeping together headings and some of the following lines of a paragraph so no heading is orphaned at bottom of a page and at least a few lines of text from any paragraph stay together.
What follows this are a series of headings and LoremIpsum paragraphs. The headings all have "keep-with-next.within-page" as "always" which will at least glue them to the paragraph. The paragraphs all have widows of "3" and orphans of "3" which will attempt to glue together at least three lines of paragraph at the bottom and top of any page. The LoremIpsum paragraphs are randomly generated on refresh of the page so you can test various layouts just by refresing and printing again.
Accusam tempor dolores te elitr dolor invidunt ullamcorper labore facilisis. At sanctus vero rebum vero gubergren elitr dolor accusam diam ex tempor dolor lorem aliquyam kasd sanctus. Elitr et odio at lorem clita ut vel et veniam no id sed justo lorem ea sanctus invidunt. Sit lorem adipiscing sanctus luptatum voluptua dolore dolor amet accusam facilisi stet volutpat magna id elitr vero nobis est. Amet vulputate amet diam dolor tempor diam invidunt sit nonumy magna. Dolor magna vero kasd facilisis elitr est invidunt. Sed esse exerci sed ea.
Delenit sed voluptua stet sit at invidunt nisl elitr lorem ea. Eu dolor consequat duis nonumy voluptua dolor facer accusam dolore illum ea nihil et tation. Dolor justo duo nibh et erat hendrerit tation stet justo. Sit amet et molestie at voluptua delenit. Assum suscipit diam eos labore labore commodo sadipscing magna. Elit duo option dolores consequat ut diam tempor lorem accusam. Takimata erat amet accusam nonumy duo iriure aliquip amet sanctus eirmod ipsum iriure eos consetetur vero nulla. Et velit nonumy exerci elitr. Blandit et et rebum duo commodo nonumy facilisi diam. Nonummy elit veniam dolor lorem kasd takimata te ut nulla sadipscing velit.
Odio nonummy consetetur et vero. Sadipscing dolores invidunt dolore velit aliquyam labore. Duo wisi vel nonummy aliquyam diam gubergren et illum duis clita rebum dolore. Laoreet ipsum nostrud sit aliquyam et placerat molestie. Ut eu at consectetuer ipsum consetetur facilisis et vero dolore suscipit sadipscing in eos dolore dolor ex lorem. Et ipsum elitr gubergren voluptua lorem amet dolores elitr invidunt illum adipiscing at congue.
Stet enim est stet diam dolor nibh eirmod duis et lorem labore erat. Et erat duo ut eirmod takimata diam et lorem gubergren nisl facilisis tempor delenit sed sit ipsum consetetur sed. Ut commodo te at et aliquyam tempor et et molestie. Kasd ullamcorper stet. Lorem duis et gubergren lorem eos elitr voluptua ullamcorper at feugiat consequat ea dolor rebum vero no takimata. Adipiscing vulputate et iriure amet. Ipsum takimata veniam lorem labore facilisi et sea ea invidunt vero elitr wisi takimata duo vero laoreet eirmod augue. Nulla eirmod eos wisi nostrud tempor est enim. Eum ut dolores dolore dolor amet.
Et ut invidunt exerci takimata illum kasd euismod luptatum. Et odio sea clita magna dolor ipsum. Et labore amet duis blandit dolor stet diam dolor dolor accusam soluta ut at magna. Duo lorem diam gubergren et laoreet clita. No erat facer. Suscipit amet dolor. Gubergren vero sit vel aliquip sed ex labore vero feugiat vel amet ut lorem sadipscing takimata ut dolores sadipscing.
Eirmod aliquyam rebum lobortis sanctus justo nonumy aliquyam sea tempor ipsum dolor stet elitr hendrerit sed velit est. Laoreet elitr ex elitr vulputate sit est dolor liber duis vero. Sanctus eros ipsum et tempor voluptua at autem exerci dolore iusto dolores clita iriure commodo ipsum. Illum et dolore clita nisl vero rebum qui rebum laoreet accusam ut gubergren ipsum feugiat feugiat clita sit accusam. Justo nonumy ex autem vero sit gubergren nonumy molestie stet amet et sanctus.
Dolore kasd stet. Stet aliquip odio in illum diam ipsum lorem sadipscing sed lorem dolores dolore. Quod eirmod imperdiet magna magna eirmod nisl ad at magna labore nibh duo. Placerat et delenit amet eirmod sea labore qui dolores luptatum ut sit voluptua. Amet dolor labore nonummy magna amet erat option. Volutpat molestie vero justo takimata facilisis vulputate sed elitr justo accusam sea gubergren. Est duo sed mazim diam dolor aliquyam amet lobortis clita et voluptua kasd autem assum.
Dolor sed diam erat ea sea nonumy sed vero vero no euismod. Sanctus diam elitr ut aliquyam diam facer accusam dolor gubergren kasd no. Stet invidunt aliquyam. Sea sit dolor ea eos et. Labore nonumy sed dolor wisi. Diam velit commodo sed sanctus est et. Ea eros accumsan dolor accumsan magna. Sit ut sit ipsum dolor invidunt justo nisl feugiat clita. Kasd eos consequat diam gubergren molestie est vulputate et et facilisi dolor diam magna sit sea diam voluptua dolor. Dolores volutpat at elit diam et lorem justo kasd no dolore et.
Consetetur kasd sed at nulla invidunt. Amet dolore in amet et takimata et amet kasd veniam nonummy sed praesent adipiscing no commodo diam odio. Possim suscipit dolor. Nonumy erat invidunt et clita invidunt. Autem volutpat suscipit. Ut eos option sit lorem sea gubergren justo amet stet stet erat dolores. Lorem sed sit sed feugiat et feugait laoreet takimata sit elitr dolor feugait et rebum lorem justo stet. Labore duo invidunt dolor magna sit iusto erat tempor. Magna lorem sea in elitr ea eros et est diam nonumy sea consetetur et autem sadipscing. Amet eirmod voluptua erat consetetur at consetetur et sanctus dolores tempor clita eos iusto tempor. Lorem diam dolore sit eros sit nam suscipit et dolor eos zzril.
Et accusam illum sadipscing et invidunt rebum et tempor stet consectetuer voluptua ut et duo lorem. Dolor invidunt lorem ullamcorper nonumy amet ut ad et sit sit zzril. Dolor quis vulputate illum consequat est zzril aliquyam amet stet nulla magna nonumy. Dolor est et. Accusam nonumy labore est iriure eos adipiscing aliquyam accusam est sit blandit eos rebum takimata accumsan kasd. Wisi commodo justo eu diam. Duis et iriure euismod amet erat dolore sit cum sed. Clita stet aliquyam et ea tempor ut wisi gubergren soluta.