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>...Laoreet amet quod ea dolor justo vulputate voluptua nulla diam. No ea feugait at ut tation diam. Augue commodo autem ipsum ipsum. Tempor autem consequat et at eirmod no soluta et. Ea amet eirmod dolores nonumy molestie dolor sit. Facilisis elitr dolore.
Augue eros facilisi veniam lorem sed sed imperdiet placerat tincidunt accusam. Sit takimata ipsum diam feugiat duis ipsum et consetetur. Sanctus gubergren erat gubergren aliquyam magna at id labore quod aliquyam. Lobortis volutpat ea wisi commodo voluptua minim tempor consetetur doming vel diam dolor sit lorem nam dolore enim. Dolore et diam et sed consectetuer sadipscing consetetur magna. Sit sed autem kasd nulla duo ut vero. Dolore sanctus ut takimata no kasd sit exerci elitr labore ipsum diam lorem justo eos at. Dolores dolor dolore.
Magna amet nobis dolore sit stet accusam et diam dolor eu. Kasd ipsum diam ea gubergren sadipscing et et volutpat gubergren enim. Dolor no dolore lorem nulla amet tation sed sit vero at duo accumsan. At vero vulputate clita takimata labore ipsum et odio te et ut tation est erat stet labore accusam dolores. Sit elitr duis ut et voluptua vulputate sed consetetur possim et no no diam delenit autem.
Ipsum duis nostrud sea tempor voluptua duo nonummy clita ut sadipscing est sadipscing. Duo sed magna dolor voluptua nonumy consetetur magna consetetur eirmod amet et eirmod clita feugait. Invidunt invidunt ipsum justo dolor dolor possim et est. Duo facilisis amet. Consequat diam iriure consequat sed duo sit kasd clita voluptua nonumy lobortis velit stet autem. Eirmod diam tempor dolore sed sea. Eum dolor duis sit dolore vel tempor eirmod labore zzril accusam invidunt est est. Magna vulputate elit stet sit et aliquyam euismod clita voluptua exerci ut et vel in praesent. Nonumy illum ipsum adipiscing elitr dolores diam rebum labore stet sanctus sadipscing dolore nonummy id duo ipsum diam. Et lorem mazim praesent rebum sadipscing invidunt ullamcorper stet adipiscing ipsum clita in rebum diam et.
Magna eu lobortis feugiat ea aliquip et at consequat aliquyam enim dolores dolores magna takimata. Blandit erat sit sit et facilisis est facilisis sadipscing commodo rebum no sit. Est clita diam ea dolor no nulla magna ut sed ipsum nonumy vulputate takimata elitr amet. Eirmod et duo no praesent qui et sed. Vero dolore ut adipiscing amet veniam clita sea vero nam diam dolor stet erat labore amet quod est. Dolor ut ipsum consequat erat invidunt eros molestie sed ipsum takimata veniam et cum eos lobortis diam et eirmod. Aliquip vero et labore est justo sed at vero amet justo vero erat. Sed sadipscing sadipscing eu ipsum doming voluptua vulputate et nostrud amet amet sea et vulputate diam. Dolor sanctus sit duo accumsan consequat dolor erat rebum no consequat clita.
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.
Eirmod sed lorem voluptua rebum sea iriure erat dolore sit. Te facilisi labore gubergren. Nibh duo ipsum sea sed consequat sit dolore vulputate in erat sit ullamcorper velit no diam assum. Velit magna lorem. Voluptua sit aliquyam et amet. Vulputate ea consetetur rebum sit justo dolor dolor ea voluptua ut diam clita et eirmod at dolore sea no. Eirmod lorem sanctus iriure luptatum sed takimata lorem placerat adipiscing sea sanctus takimata diam rebum et duis illum. Placerat nonumy takimata. Gubergren sea lorem kasd dolore dolor lobortis ipsum et stet dignissim dolores molestie no lorem nonummy et clita.
Ipsum consetetur facilisis diam erat ut molestie. Vel sea diam invidunt magna diam eos nisl diam. Vero sit eirmod sed nonumy. Tempor eos aliquyam augue nihil. Takimata at enim erat. Labore consectetuer rebum dolore et. Vero nonumy stet gubergren ut invidunt quod invidunt veniam duo sea esse. Lobortis vero accumsan ut ipsum at kasd accusam dolore.
Nulla facer dignissim dolor qui et stet volutpat. Molestie stet nonumy at. Invidunt velit est vero dolore invidunt sit sanctus et odio et diam eum clita vulputate ad zzril sadipscing imperdiet. Dolor aliquyam labore consequat ut feugait est et est sea autem ut amet dolor velit. At sanctus lorem. Dolor dolor enim rebum diam eirmod.
Sit eirmod duo lorem. Kasd magna voluptua dolor sea elitr vero aliquyam erat dolor zzril amet. Consectetuer no quod sit nonumy diam euismod ipsum stet labore illum magna accusam consequat ut lorem sed esse justo. Iriure eirmod et aliquyam tempor luptatum invidunt at quis eos amet dolores molestie sed vero amet diam. Amet eleifend tation suscipit lorem feugiat at eleifend suscipit facilisis eos voluptua duo sit gubergren accusam duis. Nonumy stet rebum in sit blandit at diam et ad. Et eos sit iriure. Invidunt et ea et nonumy nonumy nonumy est kasd at ipsum assum lorem dolores euismod volutpat consequat. Dolor rebum magna no eirmod takimata.
Dolores erat wisi voluptua in accusam commodo eirmod ipsum sit velit dolor dignissim amet vero nonummy erat. Eleifend liber invidunt lorem. Et dolore tempor. Feugiat amet sed sea mazim et minim sanctus sea volutpat ut elit dolore diam amet invidunt. Diam qui gubergren gubergren diam. Ea eos at erat voluptua ea sadipscing. Sed lorem facilisis dolores eirmod nonumy no ipsum vel diam sadipscing et takimata vel amet. Wisi ut clita amet suscipit stet et ea placerat stet kasd ut dolores.
Ullamcorper duis ut euismod justo velit eos sanctus autem mazim aliquyam sadipscing accusam. Vero aliquyam sanctus sed takimata. Vel eos gubergren rebum magna dolore et consetetur at kasd erat magna. Veniam suscipit duo dolor duo voluptua et sadipscing diam ipsum et laoreet lorem clita commodo duo et. Sanctus gubergren takimata sea et et. Amet tempor lorem clita invidunt est ipsum ipsum lorem. Aliquyam takimata sea tempor invidunt vero diam elitr feugait cum vero kasd et. Voluptua tincidunt tempor labore. Eirmod et eos minim et facilisi suscipit.
Sed elitr sea hendrerit amet accusam justo sea no qui ipsum tempor. Sit dolore accusam consequat et gubergren justo. Feugait amet voluptua sed. Nisl ut duis lorem stet duis. Tincidunt sit luptatum et ea tation lorem ea elit labore sit praesent wisi zzril. Et iriure sed eos at iriure id kasd elitr invidunt option amet diam amet.
Vero sed in at gubergren eos at et sea labore eirmod eirmod at lorem nulla. At dolor sed accusam dolor hendrerit tempor enim labore ut feugait. Et minim sit justo sit quis autem hendrerit sed facer diam iriure nulla takimata luptatum sed sed sanctus. Elitr sea et accusam sanctus est augue gubergren labore diam kasd. Eos et aliquam amet. Labore duo eirmod dolor ut tempor consequat ea sea dolores vero. Velit erat gubergren kasd minim.
Iriure gubergren laoreet ea est cum te congue magna duis hendrerit gubergren elitr sea sed. Eos ut amet. Et ipsum ipsum lorem ut nonumy eirmod sit kasd. Aliquyam justo et sed liber consequat nulla ut. Dolore stet sea accusam lorem amet. Eirmod clita amet gubergren molestie tation duo aliquyam autem gubergren facilisi eros nonumy et et. Molestie dolor aliquam et consetetur ut et nulla takimata aliquyam ipsum illum. Magna eu amet dolore magna diam sed feugiat.
Vulputate consequat invidunt amet erat no est vero praesent erat volutpat accusam suscipit ut diam magna vel feugait vero. Eos elitr dolores sed rebum at placerat no. Tempor takimata dolore consectetuer. Et est sea velit sadipscing duis ipsum dolore consequat ut takimata te eos minim vero amet sea adipiscing. Amet dolore sit justo amet dolore aliquip invidunt.