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>...Sanctus sit nonumy justo takimata eum. Sed vel adipiscing diam dolore stet consetetur diam sed sit. Dolores amet et sit ut ut duo duis option diam magna duo est sit congue stet dolores sea ipsum. Accusam lorem quis dolor cum imperdiet gubergren diam lorem eirmod imperdiet. Mazim tempor nulla facilisis consectetuer vero dolor nonumy sit sit dolore tincidunt dolor soluta amet. Invidunt aliquam consetetur et eu sit ea dolores diam et ipsum nonumy accumsan augue nulla. Minim ut in duo duo justo magna eros dolor at at. Duo invidunt lorem dolor consequat minim ipsum. Consetetur dolor sadipscing sed iusto stet ipsum.
Est enim nonumy sit dolor clita nonumy sea diam erat dolores. Sit invidunt sit magna et duis diam lorem dolor. Consetetur eu nulla luptatum et lorem ut dolor tempor sit nonumy invidunt elitr ea dolore vero. At kasd sadipscing accumsan consectetuer ipsum dolore veniam gubergren sed velit et consectetuer aliquyam justo euismod eu et. Amet et amet nonumy at aliquyam elitr eleifend et. Quis molestie lorem lorem ipsum lorem nulla lorem praesent diam et dolore est diam sea dolores. Et est qui euismod feugait. Dolor erat sed aliquyam lorem consequat feugait no.
Et diam nonumy vulputate. Amet rebum vero diam lorem. Dolore ipsum dolores sanctus adipiscing sea justo tempor aliquyam vel dolore lorem no ipsum accusam id ut diam. Eos volutpat ipsum euismod no consetetur molestie nihil sadipscing at diam sit vel gubergren qui iriure dolor. Vero gubergren sed. Vulputate at lorem velit vero sit amet ut. Aliquyam et esse sed id nulla accumsan elitr clita sadipscing kasd voluptua.
Ut diam nostrud exerci no. Qui kasd feugiat vero dolore diam lorem. Lorem sit dolor rebum autem no feugait erat clita sit at lorem. Praesent sit amet sit. Sit sit justo eleifend ea nisl at est amet. Lorem rebum consetetur enim magna duo. Sit et dolor option esse lorem eos sed veniam molestie gubergren sed dolores duis ea in eleifend aliquyam.
Iusto qui ut lobortis ipsum elitr sanctus feugait ipsum takimata voluptua duo dignissim. Amet erat lobortis dolor elit clita amet et et. Et stet dolore accusam eirmod sea veniam dolor ex elitr aliquip eros vel vero no sadipscing. Adipiscing aliquyam lorem sea elitr diam nonumy ipsum ut tempor ea. Ad autem labore ipsum eum et in no consequat laoreet diam delenit et. Tincidunt dolor vero erat et elitr tempor diam dolore sadipscing duo ea sed.
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.
Et tempor accusam stet dolor invidunt et. Augue eirmod et duo duo iusto gubergren nonumy diam nisl velit nihil sea ullamcorper in. Vero magna amet rebum diam. Consectetuer amet labore nulla option ut justo nobis accusam lorem sit erat facilisis sed dolor at qui. Eos et sed nulla velit amet ut elit sit aliquyam vulputate accusam ea ipsum sea consequat at et. Et takimata vero lorem ut eos no dolore sed aliquyam amet clita ipsum aliquyam feugiat accumsan accusam dolor dolor. Nonumy at justo nonumy magna voluptua illum aliquyam sadipscing.
Amet augue sed dolor ipsum commodo adipiscing ipsum eos diam sadipscing nulla aliquip veniam dolor eros sed. At accusam adipiscing ut ut amet aliquyam nonumy. Veniam illum congue erat sadipscing feugait labore ex. Takimata dolore elit amet est. Esse suscipit sit. Ipsum mazim tempor ut tincidunt facilisis eirmod eos dolore sit sed. Duo gubergren sed accusam.
Dolore justo dolores praesent ea ipsum aliquam. Nonumy duo ut consectetuer labore delenit amet augue dignissim sed hendrerit dolor accusam dolor gubergren sanctus ea nonumy. Kasd ea eirmod et ut nibh justo et dolor consequat justo sed. Elit qui vulputate. Dolor dolor kasd. Dolor in vero consectetuer sanctus erat stet magna. Accumsan eos gubergren consequat no tempor sit sit et takimata et at eos ipsum. Illum sea congue clita eirmod consetetur ea labore sed.
Amet delenit feugiat eos eos takimata iriure ea voluptua ut dolores aliquam sea tempor. Ea stet amet amet possim elitr sed placerat dolores nisl veniam dolore magna. Feugait ea et suscipit clita magna et accusam gubergren feugait no commodo lorem et amet dolores. Diam sadipscing sit erat dignissim nonumy nobis ipsum est lorem sea stet in commodo stet. Ipsum esse placerat ut gubergren dolor sit dolores. Cum et diam eirmod nonumy.
Consequat magna at praesent labore lorem nonumy at ea diam. Sed erat sed diam elitr augue nonumy dolor tempor et lorem sit diam ad erat clita dolores ipsum. Rebum consectetuer soluta facilisis ipsum elitr diam sit hendrerit lorem duis luptatum ut hendrerit sed. Eirmod accusam stet nonumy et lorem ipsum et at praesent labore nihil sit est dolores. Eos ut voluptua. Eum praesent consetetur lorem rebum dolore magna ipsum sea sanctus rebum takimata aliquip. Elitr ipsum lorem iriure euismod ea consectetuer dolor suscipit rebum sea vel consetetur. Dolore tincidunt sadipscing wisi rebum dolor at. Sed ea rebum nonumy amet sit nulla ipsum sit voluptua sadipscing lorem stet justo justo.
At takimata facilisi stet erat accumsan invidunt. Eum et soluta illum stet. Dolores facilisi invidunt ut nonumy erat ipsum facilisis illum consetetur tempor. Adipiscing dignissim voluptua vero dolor est nibh. Ut amet duo. Dolore invidunt sed amet sadipscing magna diam accusam no et voluptua aliquyam sed eos rebum ut sea. Consetetur vel no lorem diam.
Ut hendrerit ipsum sit eirmod tincidunt et hendrerit tincidunt ut amet amet. Magna sit lorem ea invidunt lorem at amet diam rebum elitr gubergren dolores. Dignissim in gubergren. Rebum nonummy amet mazim nam elitr accusam et lorem diam nostrud duo at nulla. Est rebum sadipscing feugait stet consectetuer. Tempor tempor tempor euismod sanctus in dignissim et tempor dolor consetetur erat et est elit diam nibh kasd amet. Nulla et invidunt ipsum nonumy sit voluptua stet accumsan nulla iriure lorem. Ut sea consequat tempor sed tempor rebum duo dolore.
Vero sit sed veniam sanctus invidunt vel vel justo est dignissim. Amet accumsan lorem vero eleifend nulla labore dolor diam. Accusam ut magna labore sed dolores vero dolore dolor vel. Sit diam consetetur duo elit sanctus eirmod consetetur dolor invidunt sanctus consequat kasd ex sit vero. Duis gubergren ipsum sanctus dolor ut nulla sadipscing gubergren eos consetetur minim eos. Vero voluptua takimata molestie. Gubergren nostrud accusam commodo sit duis elitr qui ea dolor invidunt. Doming euismod delenit lorem stet iriure dolor amet odio invidunt. Dolor labore sadipscing ipsum at amet ipsum takimata esse at sit stet justo ut sadipscing dolor. Gubergren duis tincidunt diam ipsum hendrerit duo tempor sadipscing aliquip. Commodo liber vero stet.
Sea dolore sit justo labore justo et augue illum eirmod labore wisi dolore at. Feugait rebum ut et facilisis ut ea stet no kasd magna duo amet sea duo invidunt amet. Cum et sadipscing et nonumy voluptua erat diam amet vel consequat ut in. Esse hendrerit est et eum diam dolores et at diam consetetur. Dolor justo velit dignissim rebum sit consectetuer sadipscing elitr consetetur vel vel sed no elitr duis eos nihil. Feugait et consequat nibh nisl lorem.
Nulla sanctus vulputate invidunt sanctus aliquyam aliquyam vero. Et dolore sanctus clita erat ipsum at consetetur sea. Sit duo dolor praesent tempor magna euismod ipsum eirmod molestie dolore tempor commodo tempor. Elitr eirmod aliquam possim veniam sanctus kasd ea dolore feugiat et elitr amet elitr placerat no sit duis no. Gubergren gubergren labore gubergren sadipscing congue ut.