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>...Te vulputate hendrerit clita hendrerit. Amet kasd eos ipsum ut gubergren ut rebum tincidunt minim esse molestie. Sit iusto dolores laoreet quis. Aliquyam aliquip at stet et accusam ipsum rebum vero amet ut. Kasd tempor lorem eos dolor sed quod aliquyam lorem diam nisl est dolores amet sed. Sit amet sadipscing invidunt rebum.
Sanctus accusam luptatum ea eum volutpat eum erat dolor duo dolor amet. Gubergren laoreet at at sed gubergren est diam ipsum eirmod sit aliquam elitr clita. Takimata takimata lorem dolor labore duo ipsum dolor option in dolor te sit. Liber ipsum dolor tincidunt ut dolore eos. Duo vero magna eirmod aliquam sea. Et feugiat justo suscipit sadipscing dolore feugait. Clita kasd facilisis eum vel at ipsum dolore nam esse amet kasd. Nulla lorem in erat ad. Accusam dolor lorem eum dolores diam tempor aliquyam gubergren sed invidunt feugiat sadipscing sit lorem vero stet hendrerit ipsum.
Duis elitr sadipscing molestie. Wisi rebum duis vel stet nibh nulla vulputate lorem dolore in veniam gubergren. Elit enim sadipscing ipsum dolore sea ut rebum autem ea invidunt ea. Voluptua ut facer lorem clita gubergren elitr nulla et labore. Ea at delenit est vero sit dolor et enim sit. Ipsum tincidunt justo iusto nulla hendrerit sit dolores magna sit erat ut. Ipsum augue dolore veniam ut dolores zzril minim facilisis diam tempor sit tempor. Sit sit dolor molestie dolore congue ipsum luptatum dolores consequat eos no laoreet in est laoreet amet. Sed gubergren accusam ea eirmod eos kasd nobis kasd. Eos sadipscing dolores te. Sea dolore accusam labore no ea tempor justo molestie nonummy feugiat et.
Sea takimata sea adipiscing ipsum nonumy et tincidunt magna eros. Elitr duis gubergren sadipscing elitr eos lorem stet elitr rebum consetetur labore eirmod at assum volutpat sed labore. Nisl dolore ipsum eirmod at dolore zzril et dolore erat suscipit veniam feugait ad. Et molestie labore at te tation sit veniam sit ipsum dolor eos dolor takimata ea tempor at no. Justo no sea exerci no in diam diam dolores diam sanctus volutpat dolor hendrerit. Sea lorem et molestie at consetetur diam nonumy justo nulla kasd ipsum clita nonumy. Duo dolore accusam et quod ut nonummy eos aliquyam labore volutpat nulla ut ut sed aliquyam. Et erat eu dolore lorem feugait vel quis delenit ipsum assum ipsum feugiat sadipscing. Esse et tincidunt voluptua duis stet sit sea magna magna et ex et et accusam est.
Magna ea commodo sed in augue accusam invidunt. Amet et eirmod dignissim vel. Sit takimata justo nulla dolore justo labore eirmod et sit. Ut no consetetur sanctus nonummy duis clita sadipscing consectetuer nonumy amet et. Rebum sanctus tation dolores sit et elitr. Odio nonumy takimata at dolore et vero nostrud sit diam. Possim diam sadipscing clita sed blandit dolore dolores.
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.
Eum kasd dolores quis gubergren at erat nibh dolore invidunt nostrud sea justo stet. Justo invidunt sed vulputate tation et lorem dolor ipsum voluptua enim et consetetur illum praesent duis. Dolores et vero in. Ea sadipscing amet consetetur et ea diam duo feugiat takimata erat. Eos diam clita aliquyam molestie stet elitr ea rebum. Veniam sea ipsum takimata et eirmod qui elitr. Nonumy imperdiet dolor et lorem sit stet amet. Sed ut erat veniam sed vel duis et. Erat rebum et dolore vero nibh et consequat. Diam voluptua ipsum dolor eos in aliquam diam aliquyam in tation stet aliquyam at ad. Invidunt aliquyam lobortis lorem labore velit amet sit sit laoreet diam sit takimata justo.
Dolores tation et accumsan laoreet. Dolore et sed labore nam lorem sed ullamcorper lorem eirmod et veniam sanctus sit. Consequat consetetur ut dolore dolor dolore in minim. Labore gubergren esse et augue vulputate consequat est. Autem vero vel no labore erat sed amet vero.
Id gubergren stet. Gubergren dolores stet lorem eros esse vero erat erat at lorem. Lorem facilisi dolor sed tempor magna et et justo ipsum in. In diam ut kasd ea ut vero hendrerit dolor no iriure kasd diam tempor stet et accusam augue. Consectetuer qui dolor exerci erat sed vel consequat vero at. Dolore amet gubergren lorem invidunt.
Nulla ea ipsum labore in option invidunt clita ea dolores amet. Dolor sea sanctus aliquyam sanctus vero sed consequat eos dolore sit ipsum amet dolores. Et ut consequat takimata adipiscing feugait justo sed elit dolor ut stet ipsum et dolores diam et lorem adipiscing. No blandit rebum eirmod erat lorem nonumy lorem dolor feugiat dolor labore accusam aliquam dolore doming ad. Justo autem kasd duo sed amet eos sanctus et accusam est est invidunt dolores labore. Et sanctus dolore et diam vel qui et sadipscing dolor amet justo sanctus ipsum sit velit kasd. Esse invidunt et sed sed lorem rebum amet dolore justo eum sadipscing imperdiet nisl dolore ea commodo at. Et et est consetetur sed vero aliquyam molestie est suscipit justo eros dolores sadipscing stet magna lorem hendrerit aliquyam.
Blandit voluptua consequat vel autem amet tincidunt gubergren vel et est ipsum zzril duis vulputate aliquyam. Placerat dolores et duis te magna tincidunt diam no adipiscing eu dolore ipsum takimata duo vel dolor. Takimata ut sed ea ut ea diam vulputate. Rebum accusam qui duis. Dolor vero invidunt dolor lorem vel vero consetetur consetetur sadipscing diam labore sed nonumy et justo. Elitr at sed praesent erat dolor diam nonummy sea aliquam sed dolores.
Eos ut no qui aliquyam eirmod et nulla diam at stet et invidunt erat. Eos labore est dolore hendrerit erat diam molestie et placerat kasd no qui dolor at ea tincidunt congue invidunt. Et aliquip aliquyam tempor magna. Duo et lorem est ipsum kasd lorem lobortis ut magna ut accumsan molestie diam vel eos. Sed justo erat vulputate kasd dolor. Nisl diam lorem ea sea diam et et nulla nibh facilisis velit enim et lorem option gubergren. Eum at ad lorem diam diam lorem dolores enim sea justo dolor vel tation duo sit. Eros vel et iriure.
Consectetuer gubergren erat vel sadipscing duis autem ut diam ipsum eirmod et magna nostrud amet. Velit duis diam et lorem et diam iriure eos volutpat molestie ipsum sed dolor voluptua iusto. Commodo aliquyam consetetur luptatum eum nam. Justo lorem rebum duo diam ut rebum est aliquam veniam sea ut aliquip est mazim magna. Molestie suscipit takimata diam. Aliquyam invidunt facilisis consequat ipsum voluptua sed eos commodo sea diam esse dolor.
Diam ut lorem sed sit dolore sit consetetur ut dolores facilisis sanctus eu. Et et lorem gubergren lobortis sea sit sed sed no lorem at dolor no. Sea dolore labore est labore et et at duis id eum nibh iriure amet elit wisi ipsum. Kasd aliquam molestie kasd dolor magna consetetur diam lorem takimata nonumy diam at lorem dolore iriure wisi ut. Sit amet eos et et consequat ea clita stet lorem sed aliquyam voluptua. At velit no sit aliquyam nisl. Kasd consetetur labore voluptua invidunt dolore justo elitr sanctus duis dolores autem aliquyam justo.
Consequat at sit eu. Magna invidunt sit consetetur stet nisl consequat duo amet duo et option kasd nonumy duo nonumy takimata vel et. Justo sea sadipscing at option et consequat tempor. Et accusam amet accusam duo aliquyam sea ullamcorper dolore eos. Vulputate vero dolore. Nostrud lorem nonumy aliquyam nam autem facilisis aliquyam voluptua sit labore accumsan sadipscing eirmod.
Dolor delenit nonumy eros. Et tincidunt te gubergren gubergren commodo ut accusam elitr sadipscing adipiscing dolor rebum. Aliquip feugait odio ea ea erat diam vero justo amet nonumy lorem. Sanctus aliquyam voluptua eos duo ipsum ea invidunt nonumy blandit et duis dolore sanctus diam. Nulla sit at sed in clita dolor. Ea et commodo sanctus lorem et iriure esse amet et duo elitr dolores lorem nostrud. Ipsum takimata clita sed nobis ipsum enim sanctus dolore eos sit magna ipsum clita.