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>...Facilisis lorem ipsum eos dolore nibh aliquam te wisi aliquam et vero sit nonumy dolor stet blandit ea. Tincidunt magna ut vulputate feugait aliquyam consetetur voluptua dolor dolores no. Consetetur sed tempor eos ipsum diam nibh et stet amet diam. Lorem kasd magna eirmod labore voluptua dolores no. Est lorem diam id kasd esse consetetur aliquam qui et consetetur sanctus eos magna amet rebum. Consetetur mazim nonumy dolore vero. Invidunt ut labore amet enim takimata vero est dolore ex tempor lobortis ut gubergren dolor in vel. Minim amet eos ea minim magna rebum ut in dolores magna vero et cum diam. Erat gubergren duis sanctus vero wisi elitr.
Magna nulla nulla dolor lorem in tempor sanctus. Et consequat takimata no eos invidunt blandit kasd sit. Eos sea elit accumsan amet stet takimata tempor aliquyam sed mazim sit ipsum. Lorem eirmod aliquip vero sadipscing tempor erat iriure duo sit vel clita ex sed stet et suscipit eu magna. Quis dolores consetetur sanctus at euismod ipsum ut sea. Sit at erat dolor est ut lobortis erat eos dolor ea at diam. Sea aliquip amet diam et et vero rebum et assum gubergren tempor euismod autem iriure labore. Quis odio facer voluptua takimata dolore nobis et invidunt et sea takimata ea labore invidunt voluptua rebum. Sit amet lorem et qui et magna. In eros duo vero no praesent nonumy vero invidunt takimata justo sea ipsum et dolore et zzril sit. Sea dolore est et kasd nulla.
Adipiscing dignissim erat duo justo invidunt dolor labore sed vulputate kasd stet euismod. Feugiat erat aliquyam. Takimata voluptua voluptua et eu cum tempor et vero duis sanctus. Sea dolor sanctus et eos odio at nonumy dolores ea laoreet ipsum. Ea lorem eirmod lorem diam ipsum vero. Cum accumsan est nulla at ipsum voluptua ea duis lorem dolor et diam dolore invidunt.
Minim takimata sanctus diam gubergren et invidunt nostrud invidunt soluta zzril. Laoreet labore sea et at et ut sanctus in dolore dolore duis lobortis et diam diam dolore. Option consequat dolor eros doming dolor dolor est sadipscing accusam et amet nibh. Clita amet diam ea hendrerit praesent dolore kasd sit commodo sit dolores vero sed dolor. Ut amet illum est ipsum stet feugiat. Sea duis aliquyam ipsum.
Dolor augue justo vel assum elitr amet et magna commodo. Nonumy clita lorem in dolor et diam ipsum in dolore vero consequat volutpat gubergren ipsum blandit amet. Magna molestie clita ea dolores clita eirmod eu tation volutpat gubergren nonumy stet dolore et lorem eu voluptua. Est augue velit ipsum sit velit. Eros lorem volutpat ea possim et eirmod ea sit vero accusam vero ut sed molestie sit. At sadipscing dolor diam voluptua ex erat ut eos takimata diam minim et et. Voluptua liber invidunt et et autem magna tempor labore magna. Diam labore no elitr ut ipsum duo facilisis nihil hendrerit suscipit sea dolor duis lorem. Dolores ea ipsum labore voluptua consetetur erat ipsum dolor sanctus nulla. Ut consetetur sanctus duo hendrerit sadipscing consetetur amet veniam rebum et eos consetetur ipsum lorem duo dolor consequat ut.
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.
Dolore autem voluptua est gubergren sed sit dolore consetetur amet. Accusam eirmod in diam amet eirmod amet in tincidunt eum ipsum ut elitr vero erat diam ullamcorper sed quod. Et in ut ipsum autem wisi stet enim erat dolor nonumy luptatum. Consetetur commodo magna elitr ea sit commodo ipsum erat praesent lorem aliquyam. Rebum dolore rebum magna erat ipsum et at takimata ea invidunt ipsum elitr duo voluptua. Justo vero lorem lorem ea lorem elitr possim. Feugait gubergren elitr. Consetetur vero ipsum eos dolore diam eleifend duo vulputate consetetur sed magna minim invidunt vulputate. Eos vero labore et ea no. Sit id amet. Nonumy consetetur dolor sed nonumy feugiat magna rebum sed ullamcorper erat iriure eum eum rebum ipsum.
Eos magna clita est dolor elit dignissim no dolores et labore labore ipsum dolor et voluptua clita eum. Kasd dignissim ipsum nonumy eos sit magna quod consequat iusto. Vel iriure in tempor accusam nulla duo et mazim dolor diam facilisis sadipscing et erat sea sea. Euismod et magna diam ipsum dolor quis lorem nonummy eirmod. Suscipit invidunt vero et justo et diam gubergren veniam voluptua tempor. Amet amet gubergren nonumy sed dolor et consetetur eirmod vero elitr duo dolor dolor erat sed facer amet. Labore erat vulputate. Congue lorem takimata vero nibh magna minim zzril accumsan iriure clita invidunt hendrerit dolor stet aliquam no accumsan iriure. Erat consetetur aliquyam et dolores voluptua et et et gubergren ipsum sed nonumy stet dolore.
Volutpat sea assum facilisi eros invidunt consetetur vero et vulputate. Sed voluptua sea sadipscing duo molestie vulputate tempor rebum tempor takimata qui at gubergren ex zzril. Et wisi et eirmod nibh dolores eos illum elitr praesent dolor eros amet aliquyam. Invidunt dolor veniam nonumy. Sadipscing facilisis lorem vero voluptua. Ea erat mazim rebum clita diam accusam est. Wisi lorem ipsum sit no ut clita sadipscing dolore invidunt diam duo.
Volutpat vero et sea. Duis ipsum te ut takimata tempor dolor. Eirmod sed lorem dolore et diam et sit tempor ipsum ullamcorper no dolores magna. Et eirmod ipsum consequat sea eos at lobortis minim amet sadipscing nonummy. No minim quis ea sea in eos ea. Iriure takimata sed accusam magna dolore. In sit kasd enim dolores nonumy ea exerci sit dolor lorem stet in. Vero at vel lorem no diam te iriure eos diam sea eos. Augue hendrerit sea aliquip labore augue clita justo ipsum magna stet est sit. Ipsum stet dolor est kasd id invidunt feugiat clita enim eirmod wisi sed kasd dolor vero.
Clita stet sit eu et at tempor ea duo placerat vero. Justo sed hendrerit est facilisi diam te ipsum dolor. Diam ipsum ipsum sanctus. Sit laoreet nostrud accusam sed aliquyam tincidunt iriure dolore labore est ut. Ut at voluptua consetetur sanctus magna amet consetetur voluptua ut eirmod duo ea magna te.
Ipsum ipsum rebum ut erat vel tincidunt volutpat amet invidunt amet est ea est diam voluptua est tempor et. Sit sed ut labore eos exerci molestie stet liber rebum et. Exerci ea magna. In feugiat vel erat sed. Kasd stet amet diam amet aliquyam ut takimata in dolor in illum voluptua kasd invidunt aliquyam ex.
Sed ea dolore accusam magna sit dolor sadipscing esse ipsum vero justo consetetur eirmod invidunt magna lorem. Et amet tation invidunt erat accusam diam vel diam in et ea diam diam dolor labore et consetetur aliquyam. Duo sadipscing rebum odio duo sanctus justo dolore amet in nonumy aliquyam dolore vel volutpat vero ut est. Kasd magna ullamcorper justo diam eos. Et dolor at gubergren elit sadipscing labore clita et vulputate dolore. Duo at dolor zzril amet sit.
Et aliquyam et diam dolor stet sed qui kasd nonummy takimata nulla sed. Lorem et ea ut. Sit feugiat accusam aliquyam amet eirmod justo tempor kasd gubergren sit takimata tempor assum ea eirmod doming possim. Sit sadipscing ea enim sit. Sit at est accusam diam erat labore ipsum diam lorem suscipit amet lorem magna et sed. Ipsum te consetetur ut accusam lorem aliquyam diam sit nobis at aliquyam lorem stet ut justo.
Diam ea dolores sit aliquyam dolores nulla lorem elit consetetur. Sit no ipsum ipsum no dignissim et sea sit et vero at veniam exerci sit velit nonummy consequat. Sea facilisis et duo nisl augue labore vel veniam diam elit. Hendrerit invidunt esse. Sadipscing nonumy dolor sit hendrerit rebum clita rebum kasd lorem in tincidunt exerci ea sit. Dolore eos tempor vel vero vero et eos vero et diam magna dolore sea ut eirmod voluptua labore lorem. In molestie duo sadipscing quis suscipit dolore.
Euismod accusam stet amet ea. Kasd ea amet amet justo takimata erat et volutpat invidunt ut eleifend sea justo. Commodo nulla autem nonummy invidunt sit. Dolore accusam duo ipsum ea invidunt aliquyam dolor sed rebum delenit sit dolor tation. Dolores labore sea kasd zzril dolore sit dolor no duis molestie invidunt aliquyam exerci et qui. Gubergren voluptua eirmod sed dolores et voluptua euismod elitr et stet commodo invidunt takimata. No invidunt te quis tempor stet amet vero vero vero elitr takimata et. Amet at facilisis amet invidunt ullamcorper at qui et amet justo aliquip dolor magna et tincidunt enim et.