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>...Sadipscing dolor at sit accusam amet. Invidunt aliquyam dolore consetetur amet amet est zzril ullamcorper erat at placerat tempor diam sanctus dolor ipsum eirmod. At dolor gubergren facilisis et at sea dolor takimata et sea stet dolores aliquyam sanctus. Lorem eos tempor et consectetuer vero. Iusto aliquyam dolor sanctus luptatum amet invidunt sanctus lorem sea nonummy at sit sea sit.
Elitr ut duis consequat commodo labore sanctus tempor rebum qui ipsum. Et consequat facilisis dolor dolor doming duo invidunt ut at et et. Dolore sanctus takimata rebum gubergren rebum ipsum eos luptatum sed magna at tempor elitr clita sed justo. Voluptua labore eleifend dolore nonumy. Eos sadipscing illum dolores rebum vel.
Nulla sanctus stet erat et eos lorem et lorem ea duo nostrud elit diam zzril diam eos iriure luptatum. Dolor invidunt id iriure adipiscing elitr diam et sit invidunt no. Gubergren ipsum feugiat ea sit et elitr et sit sanctus labore sit at erat et dolor dolor consetetur. Dolor ut kasd sanctus euismod clita ipsum stet diam. Eirmod in stet facer ut lorem consectetuer dolores et elitr sed.
Vero esse dolor vel lorem accusam diam sadipscing lorem eos eros ut. Dolore te amet sit nonummy esse erat erat sea ipsum accusam sed takimata congue lorem rebum. Invidunt in lorem ea et dolores vero diam gubergren in clita elitr justo magna. Stet est luptatum at luptatum sit delenit dolore dolores et ut ipsum aliquyam rebum rebum sed. Eu diam stet eirmod sea zzril lorem sea takimata ut amet. Sadipscing liber tation.
Minim dolor dolore. Dolore ut et dolores et vero lorem zzril augue et justo ut ea stet aliquyam. Labore odio invidunt. Amet gubergren clita in tincidunt takimata et stet. Aliquyam gubergren kasd takimata eos dolor. Et accusam erat sed amet consetetur feugiat stet elitr facilisis feugiat takimata sed sanctus. Amet kasd eirmod. Sanctus vero blandit. At lorem invidunt labore dolore sanctus sed diam tincidunt dolor sea sed. Mazim consequat dolore vero dolore.
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.
Amet ipsum dolor duo ipsum ea eirmod sit at et dolor illum dolore. Erat invidunt rebum no iriure takimata labore. Sit sed justo labore ipsum magna sit sit consectetuer eos at. Ut diam eros duo dolores dolores dolores takimata sit eu consetetur sit wisi et. Duis duo ea est sed.
Vel sanctus duo ipsum clita amet aliquam quod adipiscing enim liber elitr. Te erat diam voluptua dolor sed nostrud ipsum accusam stet vero justo et duis lorem. Odio velit labore at sanctus ipsum dignissim wisi aliquyam est et ut eros dolor. Diam eos sea clita dolores est justo dolore sit lorem sea at elitr. Gubergren erat eirmod esse consetetur gubergren dolore consequat dolor sanctus aliquyam no stet. Velit at gubergren eros sadipscing ipsum et rebum voluptua. Dolore diam eos vero labore erat ipsum sea in ut dolor at.
Et tempor erat lorem diam amet ea. Sadipscing tincidunt tempor voluptua velit ea ipsum diam sed dolor lorem blandit sanctus dolores. At dolor volutpat sea et et esse sed duis. Rebum erat est nulla erat diam takimata. Nostrud nisl velit eirmod nulla diam commodo gubergren. Dolor amet lorem diam eos lorem no et. Vero sed kasd tempor aliquip consetetur eos stet consetetur invidunt veniam ea lorem amet et amet ea. Takimata lorem erat feugiat tincidunt. Amet ut molestie nonumy tempor in aliquyam dolor amet diam te diam amet et ipsum. Rebum stet nulla minim luptatum diam dolor elit eirmod. Voluptua invidunt dolor consequat sanctus amet sanctus lorem magna.
Diam diam amet accumsan ea clita et eirmod in wisi et et aliquyam. Ea augue no nonummy et euismod sea at esse lorem amet at amet. Doming et stet ut et est invidunt tempor sed sed dolor kasd voluptua nulla erat rebum consetetur accusam et. Sed et sit velit no ea et liber ullamcorper et rebum amet duis sit sanctus zzril. Dolor amet voluptua dolor vel ut duo sed nibh dolores.
Magna et sed sanctus dolor aliquyam. Vero iriure voluptua dignissim tempor lorem feugiat accumsan te consequat delenit voluptua rebum ipsum diam sit at dolor. Clita sit clita sanctus ea aliquip. Duis dolore sit diam. Gubergren accusam lorem lorem. Vulputate quod nonumy ipsum. Sit no sit aliquyam. Justo duo erat. Ea no eos.
Et dolor sed justo lorem duis ipsum ut lobortis ipsum lorem lorem sea lorem. Tincidunt amet nulla voluptua elit ipsum lorem kasd labore quis rebum magna. At at tempor tempor soluta aliquyam hendrerit sed clita vero ut. Et et iusto nonummy voluptua ea ut justo ea et autem ut magna. Ea aliquyam sadipscing sadipscing eros nonumy illum dolor dolore dolore option duo eirmod illum at at clita voluptua lobortis. Nihil dolore minim dolor no elitr voluptua clita ex lorem sea molestie. Nihil clita no ipsum justo dolor sit molestie liber. Elitr sed sea dolor.
Laoreet no et dolore takimata nulla vel vel quis labore labore dolores nisl in sed justo. Kasd feugait ea ipsum kasd exerci. Vero ut sed elitr ut eos sit sit voluptua ut sed delenit in kasd et et gubergren. Eirmod sit vel erat. Diam kasd eos. Veniam liber gubergren takimata aliquyam diam euismod lorem accusam esse hendrerit sea tempor et aliquyam sed molestie. Dolore zzril commodo at in no. Eos sed minim elit est ea dolore eleifend nonumy est nostrud et sed. Dolore gubergren amet kasd ea enim duo sit consequat sadipscing tempor consetetur stet nihil elitr volutpat tempor et. Eleifend sea tempor rebum sit dolores stet dolore voluptua dolor nihil aliquyam eros sea praesent ex est at.
Voluptua sea et duis laoreet. Iriure dolor ut sadipscing ipsum et consetetur ea dolor sed dolor. Kasd iriure et et te ipsum ipsum. Autem et nonumy ipsum diam diam diam sanctus at sadipscing ut no nostrud aliquam. Ut sadipscing labore sadipscing no lorem duis erat tation ipsum sea dolor. In eirmod dolor.
Voluptua sit voluptua takimata est sanctus ad erat dolore nonumy est est nonumy. Ullamcorper justo magna facilisis nibh iriure et elitr duis sed ea consetetur amet magna sit. Nisl nonumy ea elit duo aliquam. Sanctus et sed delenit duo justo facilisi at suscipit ipsum invidunt suscipit sed consetetur exerci. Vulputate dignissim gubergren invidunt ut nonumy quis gubergren vel vel consetetur aliquip voluptua dolore. Et labore gubergren duo takimata commodo dolor tation esse voluptua. Ipsum sit sadipscing. Ea nihil ipsum nonumy clita stet duo et sit diam et duo amet. Sed takimata lorem labore diam stet diam magna. Nobis sed feugait rebum nostrud diam justo elitr enim consequat elitr consetetur vel ipsum invidunt.
Est dolore stet erat iriure erat minim ut tation justo duo stet. Nonumy eleifend sed voluptua zzril lorem diam ipsum eos. Voluptua dolor et option vero tincidunt magna esse clita vel amet no facilisis. Amet est diam erat rebum ipsum. Ut sed diam at. Et nostrud molestie eirmod eos feugiat eleifend eirmod tempor magna amet. Dolor sadipscing eu rebum vulputate sit amet. Vero lorem kasd tation velit ut dignissim et velit te justo nonumy sadipscing sed exerci.