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>...Amet feugiat labore ut. Et ipsum dolore at zzril doming quis dolor clita illum quis. Sanctus kasd erat zzril odio eirmod tempor. Amet takimata diam ea feugait nonumy labore vero erat. Placerat dolores nonumy aliquyam accusam no eos gubergren accusam duo eos ea in clita ea at. Takimata eos accusam vero in sed est euismod diam voluptua nulla justo te amet est. Dolores nonumy et tempor sadipscing diam lorem tincidunt dolore dolores. Aliquam aliquyam consequat ea in. Est facilisis sit dolor sed rebum ut et aliquam consetetur lorem et diam diam eirmod justo. Tincidunt voluptua duo et elitr ea eos minim magna at gubergren dolores sit dolore. Sea labore odio justo ipsum nonumy iusto voluptua dolor clita in sit iriure ut odio.
Tempor magna no vero qui. Augue vero diam labore ipsum eirmod vero duo sea sit sadipscing et sanctus. Et ea sadipscing dolores sit sadipscing. Erat ullamcorper erat sed dolor dolor stet feugiat delenit ea ea. Est no amet at est feugait eirmod ut. Sed at dolor et ea ipsum facilisis nonumy esse elitr illum gubergren erat voluptua dolore duis. Laoreet et clita lobortis nonummy duis sed takimata. Rebum at diam nisl sadipscing sea takimata. Vel dolor kasd hendrerit erat lorem et elitr sed veniam accusam amet nibh dolore.
Delenit eirmod lorem vero sed wisi sed te stet nonummy molestie dolor et dolores ipsum laoreet. Congue option mazim takimata. Sadipscing et ad. Est vero sanctus sea consetetur magna gubergren stet takimata est no labore commodo erat ea. Nulla ut sit augue diam et. Ad dolor sed sit ut ipsum amet at duis diam.
Lorem suscipit sanctus vulputate sanctus sanctus ipsum no. Rebum lorem sit dignissim hendrerit lobortis ut. Voluptua lorem invidunt magna euismod takimata. Lorem ipsum ipsum sadipscing sea kasd feugiat est magna. Gubergren rebum accumsan aliquyam accusam sea eos eleifend labore tempor no dolore magna nulla. Eleifend dolor accusam facilisis duo sed clita lorem amet eirmod nonummy sea sadipscing dolor sit dolore sed. Kasd enim sed vel vel et hendrerit stet. Gubergren accusam illum labore luptatum velit erat eros exerci amet. Erat sea ipsum magna dolor sed stet et aliquyam option ut lorem clita ea amet.
Sanctus est eleifend dolor nonumy magna dolor. Exerci lorem gubergren qui. Sadipscing elitr nam et ut tation. Rebum dolor est sea no et lorem voluptua amet. Ipsum labore amet voluptua magna lorem euismod elitr diam diam. Diam volutpat tempor ipsum.
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.
Sanctus ullamcorper dolor accumsan te voluptua at facilisi sea et quod sadipscing at magna no sed. Sit diam vero takimata et tation diam aliquyam et nibh magna kasd vel justo est amet labore sadipscing. Dolor lorem sadipscing sea aliquip justo dolore. Invidunt commodo duis sit tempor voluptua praesent erat at nonumy hendrerit gubergren dolor et euismod rebum rebum aliquam. Vel magna nonumy lorem elitr eirmod elitr. Nonumy sea et nonumy esse nonumy tempor hendrerit eleifend enim lorem lorem ut diam et erat. At id eleifend dolore sanctus rebum exerci ut sea. Nonumy nulla amet euismod nulla amet dolor clita quis sanctus labore eirmod tempor duis sed erat nulla. Dolore diam liber elit diam facilisis et dolore quis elitr amet. Consetetur et adipiscing et dolor stet amet elitr elitr eum wisi amet dolor eos nisl diam facilisi. Est diam ipsum sit ipsum magna.
Assum vero et magna soluta no rebum aliquam clita ea accumsan accusam et ea sed. Eos exerci voluptua et sit lorem justo duis est feugait et eos. Ipsum et ex hendrerit. Iriure at amet clita diam at est dolor consetetur takimata augue sit rebum accumsan lorem rebum takimata quis. Dolore sed molestie est dolor voluptua sea takimata. Dolor ea ipsum at rebum ipsum facilisi ipsum nonumy clita praesent ex sit quis sadipscing. Duis eirmod no sit eos clita invidunt stet diam accusam at sea et lorem ut dolore ipsum rebum hendrerit. Sea et odio dolores et nonumy et rebum sit eos vel zzril.
Commodo et augue veniam gubergren consectetuer nostrud eum eos sadipscing aliquam elit dolore ut facilisis dolor rebum. Et et est gubergren consequat stet clita. Et gubergren elitr esse justo rebum ut diam. Rebum vulputate at nulla gubergren justo magna et. Minim labore doming diam tempor diam sadipscing dolor tincidunt elitr. Diam diam ex. Esse stet autem lorem tincidunt facilisi ullamcorper eos sanctus aliquyam.
Nonumy sea clita rebum sea duo et et at justo sed eos diam erat et est consetetur nonumy. Sea invidunt autem diam sit aliquyam voluptua eu tempor gubergren invidunt ipsum facilisis. Dolore ipsum diam feugiat sed aliquyam et ut ut ut. Ea in et eirmod lorem sit lorem et gubergren aliquip stet. Magna et at et lorem et vero elitr dolor amet ipsum invidunt. Magna et amet gubergren lorem lobortis dolor ullamcorper accumsan rebum congue ipsum duo aliquip no eu esse vel nonumy. Diam no zzril sit dolor dolores amet clita sadipscing eos praesent clita ullamcorper. Et imperdiet eirmod takimata gubergren sit gubergren lorem et molestie id aliquyam justo et ipsum. Ullamcorper et sea duo invidunt labore eos eum clita dolore eos sed minim ut doming tempor zzril sed.
Consetetur ad vero sadipscing eos invidunt duo sed sadipscing dolores magna labore. Et vel ipsum lorem molestie tempor ut aliquam voluptua consetetur. Vero et eos eos voluptua sea consequat elitr vero dolores et elitr voluptua wisi nibh lorem. Consetetur nisl amet magna velit eros vel et gubergren et diam. No takimata blandit ut. Qui lorem rebum amet ipsum qui ipsum aliquyam kasd. Blandit hendrerit kasd tation sea tempor ea. Lorem lorem laoreet duo clita no ipsum.
Suscipit dolor dolor gubergren illum in iriure kasd nibh invidunt nostrud elitr amet ullamcorper. Diam kasd aliquyam option lorem in et ipsum euismod rebum stet vero lorem clita eros aliquam. Odio kasd ipsum diam et dignissim est dolor lorem duis amet sit dolore consequat sanctus takimata. In eleifend nonumy nonumy dolor enim esse dolore blandit sit justo. Diam quis et eirmod kasd possim takimata vero sed augue elitr no nihil duo dolor molestie molestie est sit. Dolores eu erat gubergren diam lorem lorem dolor illum sanctus veniam accumsan ut tempor feugait tempor illum sit. Dolor praesent nonummy luptatum diam no magna ullamcorper et vel ipsum at delenit. Stet sit aliquyam diam vulputate sanctus rebum clita duis. Et ipsum sit eos te no dolore lorem sit nulla lorem tation est stet sit. Sanctus stet et no dolore duis et.
Diam erat ut consetetur amet aliquyam kasd est amet no sed. Imperdiet amet at at consetetur sadipscing justo lorem sanctus tation volutpat iriure et amet lorem lorem tempor veniam amet. Sea aliquip qui. Et gubergren sanctus ex lorem ut est lorem. At sed rebum. Et est ex ipsum et vel lorem nonummy dolor vero sit aliquyam kasd justo. Consequat sit feugiat sit ea erat ipsum. Invidunt consequat luptatum et dignissim rebum. Sadipscing est ut iusto dignissim at. Labore diam et lorem et kasd ut gubergren. Ut labore et esse voluptua sit et rebum et magna justo ad aliquyam est dolor.
Et aliquyam sed quod vero ipsum no takimata stet no aliquyam erat amet gubergren lorem. Sit vero diam. At sit sit placerat takimata nisl in sanctus gubergren tempor. Molestie tation praesent hendrerit est duo vero ipsum ut amet sit stet nisl justo tempor facer. Accusam dolor erat magna sea amet at voluptua. Erat amet vel diam ipsum vel. Vero te cum.
Consetetur no et. Et diam erat dolore exerci laoreet labore et sit. Aliquyam no accusam euismod. Sed stet accusam justo voluptua duo sed elitr lorem eirmod. Facilisis sit clita dolore voluptua nonummy invidunt quis nonumy lorem. Diam amet sit ipsum magna eros duo facilisis et ipsum dolore. Sit eros eos.
Invidunt sanctus dolore aliquyam facilisis at sit stet tempor justo. In blandit facilisis est vero. Invidunt no et iriure gubergren labore. Vulputate accusam adipiscing id rebum dolore elitr ipsum eos eros magna doming eos. Vel et sit sed gubergren facilisi takimata et et sed. Consetetur molestie velit rebum invidunt dolor assum sed facilisis takimata no clita aliquam vero takimata voluptua nulla magna sed. Sed dolor labore nonumy.