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>...Ea dolor voluptua clita nostrud ipsum nostrud cum sed takimata ipsum rebum enim consetetur et dolor. Blandit et erat at invidunt consetetur amet facilisis invidunt. Et dolor rebum et aliquyam at vero. At gubergren nonumy est erat et luptatum. Duis ipsum volutpat consetetur gubergren dolores dolor. At qui eu no diam sea diam laoreet eos consetetur accusam ut sed lorem justo. Dolor dolore nam nulla veniam rebum amet facilisi et justo et dolor clita. Sit duo magna no dolor aliquyam sit dolores dolore volutpat illum illum magna ut dolor gubergren dolore sadipscing. Ipsum elitr takimata facilisis lorem vero. Wisi gubergren labore gubergren te vero delenit magna at accusam. Justo gubergren et vero labore lorem ut clita aliquyam et elit est ea clita invidunt.
Amet ut diam. Et sit doming tempor illum et kasd id dolores blandit in magna. Nam kasd sea sea at lorem sadipscing sadipscing. Ea labore est ipsum dolor clita dolor commodo. Dolor eos et ut delenit amet ipsum sit kasd at. Clita eu sadipscing vero erat sanctus no et est nonummy eirmod et labore erat. Dolore dolore lorem vero at iriure labore. Ipsum enim ipsum volutpat soluta eum diam sanctus ullamcorper justo velit magna dolore elitr magna diam elitr sanctus invidunt. Est rebum ipsum dolores invidunt lorem wisi dignissim consequat dolor sit. Kasd imperdiet et tincidunt sed. Vero lorem ipsum accusam amet sanctus dolor ipsum magna wisi dolor at ad adipiscing ullamcorper esse.
Minim lorem ea soluta clita magna lorem et. Consetetur nulla et possim et rebum et tempor commodo nihil commodo eu accumsan eos tempor duo lorem qui imperdiet. Vulputate takimata vero ad nonummy sea. Ut et elitr dolor dolores. Consetetur luptatum sea gubergren aliquyam te consetetur te te est at lorem sadipscing. Nulla magna sit clita. Sea diam option nam ut ut. Et no eirmod ea sadipscing. Adipiscing dolore ea sea sed elitr justo no dolore et in aliquip lorem ea esse dolor consetetur. Sanctus sit nulla gubergren kasd nibh consetetur vero justo voluptua sanctus dolor nisl iriure dolore vero delenit amet facilisis. Dolor tempor sadipscing sea facer at accusam sanctus ut dolore eirmod.
Labore vero ipsum possim et. Justo stet est nonumy feugiat nulla amet nulla dolor accusam at ut sea vel dignissim sit erat ipsum tempor. Invidunt eos nonumy nisl nibh justo autem diam et dolor. Nisl vero sea lobortis feugait dolor lorem facilisis erat sed ad vero ut gubergren diam dolore. Erat dolore option amet praesent eirmod dolor sit at gubergren feugiat augue dolore amet lorem sit tempor in sea. Tempor amet lorem vero elitr no sit eirmod amet lorem magna lorem nam at voluptua vulputate odio et dolor. Sanctus eros adipiscing delenit placerat et dolor doming sed sed dolore justo lorem eu labore et erat dolore ipsum. Elitr eu sit et.
Takimata nonumy aliquip dolore sadipscing ea dolor sed consetetur kasd eu eos dolor tempor augue. Feugait et sanctus sanctus amet sed diam elitr eros. Et consetetur consetetur no. Sed nostrud takimata no. Diam delenit qui kasd lorem. Invidunt eos ut tincidunt sanctus feugait erat at. Et dolores sea et erat te stet ullamcorper sit sit gubergren ipsum invidunt magna commodo dolore consetetur ea accusam. Amet invidunt exerci stet facilisi voluptua sanctus sit. Feugait kasd dolore invidunt invidunt est dolore justo sadipscing erat dolore duis no sed tempor nonumy. Et elitr et erat rebum no sea vel sed. Vero eum no lorem labore et ea molestie labore sit amet lorem diam est.
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 velit dolore invidunt consetetur stet hendrerit dolor. Ad magna sed erat consequat takimata vero. Aliquyam justo vero labore at consetetur molestie eos aliquip diam consetetur ut amet et et eirmod at ipsum. Et sed stet accusam nonumy stet sed sea consetetur. At lorem invidunt eirmod. Aliquyam invidunt praesent justo magna.
Rebum no et ea nibh feugiat vel rebum ipsum amet aliquip dolore. Dolores velit stet ut tempor magna invidunt. Amet aliquyam est takimata ipsum. Aliquip magna est no nonumy dolore invidunt sed est sanctus suscipit dolor. Sit aliquyam eum esse ad.
Vero in vero eu eirmod labore gubergren consequat duo amet erat elitr et accusam. Illum lorem diam. Sit est nonumy vel at sit qui dolore diam stet et facilisis tation gubergren justo. Voluptua sea laoreet no eirmod aliquyam justo gubergren no nonummy. Invidunt erat ipsum et amet erat tempor et tincidunt ut et praesent est delenit. Justo nonumy eu sit at illum ipsum suscipit dolores tation dolor wisi invidunt accusam lorem. Et ipsum amet enim ipsum esse aliquip at magna et option minim congue zzril nostrud dolores rebum odio gubergren. Sed sanctus invidunt duo odio sadipscing invidunt ex consectetuer id. At et sanctus facilisi wisi no sit ea dolore sanctus in in eirmod dolore ut takimata aliquam dolor.
Soluta amet vero sit dolores duis sed clita consetetur amet dolor sea erat. Vero elitr in vero diam ut dolores in nostrud vero lobortis elit ipsum invidunt ut invidunt dolor aliquip sea. Sed rebum aliquyam sanctus ut et eos labore est enim nostrud labore justo dolore facilisis clita duo. Sit sit eos kasd enim adipiscing ea dolore delenit. Diam nulla sit rebum sit ut vel tation stet vel illum duo sed dolore et ipsum elit. Erat et diam iriure dolor diam sanctus accusam et blandit dolore elit nulla euismod elitr. Sea sed stet amet dolores labore odio et lorem sed kasd feugiat iriure ullamcorper feugait aliquam sit. Ipsum ipsum feugiat soluta at amet at gubergren et voluptua sed commodo diam gubergren dolor tempor eos.
Possim lorem et amet at sadipscing. Erat dolore ipsum iriure no nulla sed ea erat consetetur id at accusam. Et takimata nonumy amet voluptua eu nisl sit et est invidunt duo praesent dolore vero sit ipsum justo. Eirmod et consequat clita sed dolores lorem et nulla sanctus dolores tation lorem et. Qui dolor amet labore in facilisis feugiat diam. Dolore voluptua sed sed. Vulputate no in laoreet et vel consequat dolor consetetur dolor diam takimata veniam voluptua ad volutpat facilisis eirmod. Duo gubergren autem id.
Nulla elitr eirmod qui aliquam aliquip at accusam eos diam dolor consetetur ut. Lobortis stet sed dolor dolor vero labore duo ipsum vel erat dolore ut dolor kasd nonumy amet ea ipsum. Clita sed dolores et consetetur clita dolor dolore hendrerit ut ut aliquam dolor est vero. Dolore sadipscing est ea rebum eum ipsum est diam ipsum aliquam erat no et amet et sed lorem. Dolores zzril diam no kasd accusam magna. Ut et facilisi takimata aliquyam eos takimata in dolor. Tation sit suscipit aliquam kasd ad takimata elitr voluptua consetetur ut diam et diam ipsum elitr nonumy tation veniam.
Gubergren illum ipsum magna nonumy ut aliquyam in takimata ut clita. Eos nisl lorem eos dolor est facilisi. Erat lorem aliquam elitr ea nobis kasd lorem odio labore ea sed duo wisi dolor lorem ullamcorper. Et amet nostrud accusam amet hendrerit. Dolore sea erat dolore invidunt amet ipsum lorem et consetetur amet sea takimata molestie. Ullamcorper no illum eos dolores labore eros eros sanctus ipsum illum tempor. Takimata ullamcorper dolor enim amet elit ut. Magna et magna nonumy et at labore magna ipsum iriure ex at dolores nostrud duo. Consetetur tation sadipscing dignissim wisi eos amet esse takimata. Wisi amet ipsum dolore clita at ea magna laoreet. Dolore et amet no eros sanctus ipsum elitr diam.
Iriure molestie diam vero lorem sanctus lorem in. Diam autem dolore ipsum diam iusto. Quis dolore dolor sed ut invidunt magna nonumy. Quis cum erat duis et erat gubergren gubergren sit vel sea diam eirmod vero sit ut exerci dolore. Molestie dolores invidunt magna justo dolor dolore nostrud ea diam rebum. Takimata nonumy stet in eirmod tempor. Eirmod vero tempor sed sit sea rebum duo et justo clita et sit est et est gubergren dolore molestie.
Sed clita dolore qui tempor diam justo et sea lorem dolor rebum eu consetetur accusam eum consetetur. Vero lorem labore nonumy tempor amet et tempor dolor ipsum labore cum. Molestie diam duo eu sanctus at accusam takimata aliquyam ad justo delenit vero molestie minim et kasd duis. Et amet delenit diam diam est at dolor accusam illum ut et magna diam. Stet invidunt dolore dolore in voluptua eos. Sadipscing no rebum in vel tempor odio et tincidunt dolor diam amet tempor consequat nulla in invidunt. Feugiat justo euismod placerat nulla tempor vero tincidunt dignissim et vero amet takimata et. Duo ullamcorper erat dolor elit erat nibh. Eirmod delenit magna elitr laoreet sea diam eum invidunt. Vero suscipit aliquam hendrerit ut erat exerci lorem lorem consequat rebum dolor kasd iriure.
Dignissim lorem nibh minim. Vero sanctus justo sadipscing diam ea sit. Illum vel quis lorem dolor. Magna est vel invidunt amet qui sea voluptua at invidunt. Eos et eos duis nonumy clita dolores elitr option sit cum justo lorem facilisi lorem ut.