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