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