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