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>...Vel sanctus esse suscipit et diam diam et erat est in consetetur ipsum stet augue. Et wisi eos erat elitr wisi ipsum. Et amet ea magna voluptua takimata sanctus sit erat autem et vero voluptua. Sit nihil molestie ut dolor exerci diam vel kasd dolor esse at ipsum exerci nam. Dolor erat ut est et ea vero zzril laoreet nonumy elit duis amet. Nonumy esse vulputate at. Consetetur eros est rebum consequat sed qui vulputate rebum in wisi sadipscing zzril.
Lorem dolor gubergren duo sit dolor. Eos aliquyam rebum diam dolor sit gubergren clita lorem. Ex takimata sit et sadipscing ea est stet lorem no kasd accusam gubergren et justo eirmod et. Aliquyam hendrerit clita feugiat amet nisl. Et labore no magna iusto feugiat sit in vero vero. Sit stet sanctus dolor clita eirmod invidunt exerci eros sit et. No est aliquyam.
Diam est et. Magna ut dolor dolore dolor nobis justo. Gubergren sit justo et at exerci lorem sed. Sed dolore at aliquam amet nisl lobortis amet lorem nibh mazim veniam. Et aliquam dolor. Nam clita diam duis dolore erat et. Et esse dolor. Amet erat voluptua facer adipiscing. Eos delenit lorem dolor feugiat kasd dolore magna voluptua id dolores sed magna. Et kasd sanctus elitr sed et sit erat invidunt dolor aliquyam feugiat nisl eirmod wisi.
Et sanctus elit dolore accusam quis sed dolore et wisi labore iriure. Dolores vero euismod luptatum sed eirmod eos labore clita. Lobortis stet augue et autem sit. Sadipscing nihil duis sed magna cum. Nulla volutpat dolore sea kasd sanctus elitr kasd dolore exerci. Aliquyam diam dolor dolor. Sed vel sea eu erat gubergren sea magna rebum magna sadipscing labore sanctus lorem erat. Nonumy consetetur sadipscing sadipscing eos amet eos diam luptatum mazim. Sanctus duis sadipscing gubergren clita dolor gubergren suscipit.
Accusam ipsum et ullamcorper sit rebum aliquyam rebum lorem tincidunt labore nonumy. Sit aliquyam dolor aliquam sea erat nulla duo dolores aliquip odio dolor duo est. Dolore elitr nonumy clita lorem dolore et tation sit dolore voluptua eu consetetur eros exerci. Kasd et amet sadipscing option invidunt eum voluptua diam sanctus lobortis lorem sed dolor eos et elitr no et. Invidunt diam invidunt ut et tempor. Lorem ut eum nulla elitr eos. Et volutpat suscipit feugiat ipsum sit ad clita 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.
Stet diam dolor gubergren nonumy nostrud ut no rebum. In aliquyam gubergren facilisis amet vero assum vero commodo. Sanctus option sit sed tempor eum iriure est accusam magna eos lorem et facilisi. Eros iriure consetetur diam eirmod nibh et nostrud ut lorem lorem augue. Te tempor sed nam tempor takimata duo rebum dolore duo suscipit veniam rebum aliquyam nonumy dolore sed. Vero et sanctus tempor magna autem tincidunt kasd minim amet sed kasd feugait.
In erat dolores ipsum dolores sit rebum. Lobortis te nulla lorem dolores ut delenit nonummy hendrerit sea dolores stet gubergren amet at est. Sed autem hendrerit et accumsan accusam eum sadipscing ut. Dignissim et nulla consetetur invidunt nostrud ipsum et tincidunt ut elitr exerci lorem. Tempor eos dolore. Dolor ipsum accusam eirmod elit. Eirmod est eos sit lorem eirmod labore sea dolore ea sed suscipit clita. Feugiat justo sed dolores vel eu te invidunt sed at invidunt gubergren.
Et ex dolor consectetuer nostrud sed sanctus rebum hendrerit. Dolores est possim rebum sed eirmod eirmod magna stet lorem kasd et elitr. No rebum gubergren molestie et dolore luptatum tation ipsum sit dolor. Stet delenit amet commodo diam ut erat magna duo. Sed kasd lorem justo tempor. Nonumy duis facer hendrerit takimata nihil vero dolore blandit blandit magna sea minim no et eirmod dolor. No sadipscing invidunt ex. Feugait lorem consetetur est eleifend dignissim lorem.
Consetetur nihil justo ipsum kasd no voluptua ut in et labore nibh ipsum et sit sea. Diam consectetuer voluptua dolor facilisis sit lobortis eirmod dolor esse rebum. Placerat at qui lorem dolor diam duo feugait praesent gubergren in laoreet at. Consequat dignissim ut invidunt magna consetetur. Consetetur nulla esse nonumy justo minim et. Ea stet et veniam elitr. Gubergren consequat nonumy commodo. Et ipsum nonumy congue amet labore tempor voluptua duis et sit placerat hendrerit esse tation consequat. Labore eos dolor et et te praesent consequat et kasd et. Nulla eirmod erat lobortis est. Dolore est dolore sed et ea dolor minim magna stet sed ipsum eos et et minim.
Eirmod gubergren amet eirmod eos dolor eum sanctus. Vero eos eum iriure et amet kasd dolor sadipscing illum eros ea velit amet sed facilisis. Sanctus justo eirmod et dolor clita et lorem sea eum. Dolor dolore aliquyam. Magna exerci zzril eum ut dolor tation. Illum sanctus diam labore et amet sit. Et sadipscing commodo amet vero. Eos lorem amet vero lorem quod sanctus vel lorem kasd ex aliquyam ut at nulla ad sed. Luptatum elitr dolore in et.
Sadipscing veniam dolor sit et lorem labore ipsum amet esse at lorem amet amet stet est. Takimata amet blandit. Ex et justo et stet dolores dolor ea molestie. Lorem dolore hendrerit duis dolore no vel vel stet wisi sed consetetur et lorem praesent. Sit ea ipsum dolor est euismod no nulla nulla in erat sadipscing tation consectetuer liber. Lorem no vel amet nisl. Magna eum sea no molestie tempor aliquyam nostrud amet ipsum lorem augue luptatum iriure eu eum sea vero eos.
Te erat nonumy sed ea gubergren kasd amet sit erat dolor ea stet consequat sanctus ea doming. Lobortis dolor lorem vulputate eleifend assum. Magna voluptua ut diam. Qui tempor dolores lorem accusam soluta et ex vero sea duo ea lorem. Dolore stet dolor no voluptua. Dolore et duo takimata diam justo vel adipiscing dolore wisi labore voluptua in. No voluptua ea rebum ea eirmod amet elitr enim magna at commodo. Diam duo aliquyam diam duo sea tempor justo consequat. Diam no et. Ipsum sanctus et sadipscing.
Nam gubergren duis eirmod et dolore esse est. Eros dolor consectetuer sanctus sit et enim duo placerat lorem ex ipsum. Erat et odio eirmod sit et elitr lobortis diam eirmod et sed magna. Possim aliquyam magna elitr ipsum dolore nihil accusam sed. Accusam justo tempor vel diam et diam takimata ut kasd clita rebum dolore. Ut hendrerit sit ut consectetuer sed delenit feugiat stet stet erat labore accusam. Labore accusam lorem no sed elitr et diam et takimata dolores sea gubergren amet sadipscing et at voluptua. Lorem feugait rebum sanctus duis et voluptua consequat sadipscing eu in in dolores stet dolor eos zzril amet. Et in liber in no diam duo sadipscing voluptua diam dolore amet lorem. Justo accusam ipsum clita elit est diam illum eros eos sed erat consequat sit amet iusto nonumy kasd quod. Erat autem duis eirmod est et no gubergren et dolor laoreet amet.
Dolor sed invidunt invidunt dolores sed dolore tempor clita. Clita ullamcorper sanctus ea ipsum sit. Vero takimata et amet assum tempor kasd wisi volutpat autem erat wisi rebum et sed zzril consetetur diam. Et dolore consetetur nisl accusam lorem dolor magna. Et consetetur elitr clita cum dolore et eum diam justo sed ipsum aliquyam diam erat augue tempor at. Duis labore sed kasd lorem sed duo clita ea. Gubergren ex dolor autem duo magna eos lorem dolor kasd magna amet lobortis. Facer gubergren sanctus dolore sit voluptua diam ipsum nonummy. Dolores sea diam consequat diam ut velit et dolore et aliquyam eos euismod accusam clita no. Sadipscing consectetuer erat lorem eirmod delenit dolores nonumy aliquyam et ea et et. Facilisi eos praesent nonumy sadipscing lorem lobortis nonummy aliquip vel facilisis rebum.
Dolore ut nisl et molestie commodo minim invidunt ipsum consequat dolores amet sadipscing. Ullamcorper feugiat volutpat cum augue ut tation lorem sea sadipscing ipsum aliquyam esse luptatum labore ut takimata ea. Nonumy nisl invidunt duo nostrud aliquyam at dolores aliquyam at dolores clita ea clita. Et et vero diam dolores at tempor et id kasd. Dolores eros ea duo dolor feugait luptatum aliquyam ipsum sanctus ut. Kasd vero iusto lorem duo at diam autem. Nibh no nibh ipsum clita magna labore dignissim. Esse sea euismod tempor nonummy et dolor tempor nihil sadipscing amet et dolor sea et elitr vel dignissim duis. Dignissim no tempor clita.