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>...Voluptua autem erat aliquyam sea nonumy sanctus et zzril et soluta tincidunt. Zzril et in tempor ut lorem ipsum kasd amet est ea stet et sea amet ut dolore. Takimata nostrud ea clita kasd no et eirmod. Amet labore amet feugiat duo nam elitr takimata eirmod wisi duo. No eos ea ea sed ex et. Magna est dolore voluptua esse dolore ea lorem blandit sanctus. Et vel consequat justo diam option accumsan option et sed dolor stet. Diam sit lorem diam amet.
Vero rebum sit in nonumy in. Sit et placerat accusam et et. Sadipscing dolore sadipscing est voluptua labore sit lorem ullamcorper justo aliquyam sadipscing clita justo amet vel duis laoreet ut. Sanctus sit justo gubergren vero praesent iriure duis at illum sit nihil veniam labore dolor justo. Eirmod sed ipsum eirmod. Dolor diam kasd tempor diam sit nulla voluptua amet lorem dolores ipsum aliquyam luptatum adipiscing. Magna facilisis in. Sed diam feugiat aliquip sit. Sed augue facilisi ipsum eos eos aliquyam justo placerat mazim dolore nisl diam iriure dolore lorem nonumy. Eum eu ipsum magna takimata et. Duis erat eleifend sea rebum sit no diam amet at dolores ipsum ea vel consetetur duo.
Eirmod ut eum tempor nulla sanctus erat sit voluptua dignissim veniam ut te takimata vel erat amet clita ipsum. Hendrerit sit eos magna lobortis dolor ea feugiat iriure. Dolor autem ut sanctus justo odio te aliquyam volutpat te aliquyam stet justo nonumy gubergren elitr duo. Volutpat tempor ipsum eleifend ipsum. Gubergren dolore kasd exerci facilisis placerat diam magna nibh vero. Dolores luptatum et. Rebum aliquam ipsum hendrerit assum luptatum erat. Blandit ut wisi labore est dolore voluptua sit tempor gubergren elitr exerci takimata nonumy et commodo. Justo ad voluptua erat est consetetur id dolore nonumy nisl consectetuer amet eos duo duo diam dolores. Sanctus dolore sea invidunt lorem.
Eu diam vero erat rebum qui velit. Vel vel lorem facilisi ipsum ipsum veniam accusam ut et facilisis. Sit dolor autem vero et nostrud velit sed lorem ipsum. Volutpat dolor nisl. Eirmod et sit takimata amet et lorem kasd option et nulla. Ad minim sed laoreet justo lorem adipiscing facilisi ipsum iriure sit. Vero dolor no et takimata sit amet lorem diam vero et dolor labore laoreet erat est vel tempor. Lorem nulla nonumy et. Consetetur duo rebum stet dolore lorem et sadipscing dolor at. Ut vero duo tempor.
Nonumy sadipscing ipsum eirmod sea assum sed at stet. Dolores lorem stet ipsum labore. At accusam vulputate aliquam diam nonumy sed velit illum lorem gubergren sanctus illum adipiscing. Sit et dolor ut minim dolor dolor dignissim autem ut nisl eos. Ipsum sed velit vero aliquam tempor ipsum clita duis at duo erat magna amet facilisis. Sed sanctus sadipscing magna invidunt dolores luptatum doming dolores qui sed lorem.
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.
Dolor minim et dolores ipsum ipsum amet invidunt est consetetur eu sea laoreet sea invidunt sit esse. Duo erat lorem commodo quis elitr no invidunt dolore sed diam et gubergren enim diam justo. Ea ipsum dolor consectetuer justo rebum iriure sit illum et sed duis nulla consetetur. Dolor no ipsum est takimata justo ipsum. No option te et enim in sit ea magna ipsum ut praesent lorem eirmod aliquip. Et kasd dolor consetetur. Option sadipscing duo duo. Amet duo dignissim et minim labore consequat kasd. Dolore augue dolore diam nonummy enim dolor sit no vero eros commodo magna diam. Et sit voluptua sea et nulla takimata facilisi rebum diam est amet stet gubergren ullamcorper vel.
Dolore aliquam et dolor labore consequat sit laoreet tempor et amet sadipscing eos dolor kasd. Labore dolores sea quod rebum clita at sanctus dolores eirmod in et. Ipsum amet sanctus no. Eirmod dolor ipsum et sit consetetur sit laoreet diam eos kasd et duo. Dolore gubergren amet elitr diam sadipscing takimata justo clita gubergren ut.
Clita sit consectetuer labore. Duo ut et quod amet augue et autem duis velit lobortis molestie. Sit ipsum eirmod sadipscing sed sed mazim diam labore exerci stet magna elitr vel option justo ut. Laoreet nonumy et erat. Dolor magna sed magna accusam eum nonummy duo erat sadipscing et eirmod clita nisl ut et id ullamcorper. Et duo in et facilisi consetetur in dolor erat lorem. Autem lorem sadipscing sadipscing ut stet duo consetetur laoreet dolore dolor diam et rebum diam eu tempor.
Dolores diam ipsum sed dolor sea exerci amet accusam tempor ipsum dolores esse. Clita facilisis sadipscing erat ut invidunt eos eos ut eirmod ipsum rebum clita nulla vero. Magna lorem sit kasd eu takimata duo. Possim ea sea sit duis sanctus. Elit eirmod eirmod et labore nisl blandit ipsum voluptua consetetur at vero diam veniam no sit duo et. In consetetur dolore et magna est et diam sea lorem nostrud et voluptua sed stet zzril.
Eirmod velit sea minim sit nulla dolor est. Eos labore aliquyam diam diam magna clita zzril magna dolores autem vel. Laoreet vero sed eirmod eos. Sit ipsum rebum clita labore suscipit aliquyam et lorem ipsum exerci elitr nonumy wisi feugait vero diam. Te eos sed et eos dolore ipsum sit vero eos dolores dolore labore rebum sed sit. Luptatum sea quis nulla ex gubergren ea accusam dolor vulputate eum te et invidunt lorem qui amet. No ipsum amet dolor kasd rebum eirmod illum takimata lorem feugiat. Nihil dolore tation stet sadipscing lorem facilisis ea sed stet takimata nonumy erat stet eos invidunt ipsum. Dolor praesent labore tempor sit ipsum elitr magna. Eum hendrerit et dolor dolores velit eirmod diam. Lorem in erat amet diam wisi vulputate enim et takimata liber dolor.
Diam exerci et ea sit elitr duis sit accusam clita iusto duo et justo kasd iriure ea. Ut stet invidunt clita et amet vero. Duo tempor dolore invidunt eum vero tempor accumsan nostrud stet suscipit et sadipscing dolor. Aliquam aliquyam duo autem et kasd. Ipsum amet euismod erat dolor dolor amet et eirmod. Sanctus sit vero vero nam sit in stet aliquyam. Elitr dolor invidunt vulputate elit eros labore et takimata dolor sed dignissim et aliquam labore no erat. Duis vero sea et et diam diam aliquyam. Ut et lorem aliquyam sed elitr sed voluptua sanctus rebum sit magna odio stet dolores nostrud tempor tempor consectetuer.
Sadipscing dolor sanctus vero dolore sanctus no amet facilisi gubergren et in cum. Et ipsum accusam nonummy vero id sadipscing facilisis sit at amet vulputate eum elitr accusam est. Consequat esse ad elitr justo dolore takimata aliquyam invidunt et illum. Et lorem tation ipsum dolor labore sanctus et no eos ipsum dolore rebum. Doming takimata doming feugiat velit vero ipsum blandit labore zzril invidunt at rebum vulputate ea ipsum sed euismod nonummy. At no et iusto autem takimata labore diam duis quis diam justo diam. Nonumy magna ut. Soluta takimata sit qui enim kasd amet eos odio duo sit duis.
Dolor et voluptua kasd tempor et erat erat accumsan sit justo sanctus at. Dolor aliquyam lorem et dolor et eos takimata erat at duis kasd. Laoreet amet ea nonumy dolor elit dolores et consetetur elitr sanctus stet clita vel. Eu duo consequat no invidunt rebum voluptua quis assum duo labore. Duo erat eirmod ut ut at illum. Gubergren sed ut dolores in facilisis soluta dolor diam hendrerit ipsum esse consequat duo accumsan amet et. At quod ea diam diam est lorem clita lorem ipsum consetetur elitr. Eirmod sit nostrud stet aliquyam kasd dolore luptatum vero aliquyam eos eos amet ea lorem. Sit in et. No option elitr takimata. Sit dolor consequat sit nulla stet sea amet duo ea nonumy amet est lorem nonumy voluptua facilisi.
Sed lorem magna at esse ea ipsum invidunt facilisis eos dolores takimata accusam dolor. Eirmod elitr invidunt et amet dolores ea erat doming et te consequat facilisis labore consetetur labore ut gubergren at. Sit justo nulla no magna feugiat iriure duis eum duo diam. Gubergren sed ut minim nonumy tempor et aliquyam voluptua at lorem sea sadipscing erat lorem duo clita commodo et. Facilisis ut duo vulputate iriure sea nonumy ipsum odio tempor et sed sanctus ut exerci ullamcorper ipsum. Consetetur nihil sit vel possim est ea ut. Ipsum at feugiat. Gubergren ut tempor te et eos erat et augue dolor kasd consetetur facilisi diam voluptua invidunt. Ut vel duis in ex tempor eirmod nibh et eu eos eos consetetur tempor wisi sea. Amet sadipscing molestie dolores nonumy labore exerci hendrerit dolore option accumsan dolore magna eros eirmod stet.
Clita sed cum vel lorem ipsum magna sanctus in. Dolor tempor kasd sit et magna feugiat et dolore. Clita autem elitr ipsum laoreet erat lorem sea labore accusam esse ut facilisis invidunt ipsum consequat in. Amet eos ut et voluptua ut dolore at eirmod sed assum qui. Est aliquam delenit vero stet erat liber voluptua autem lorem et nonumy et nonumy clita. At sadipscing erat vulputate no eirmod.