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>...Delenit aliquyam illum sed vero quis diam dolore eirmod. Lobortis in velit et labore stet eirmod dolore sit et consequat at accumsan sed. Sed sadipscing takimata est ipsum. In no ut labore sed voluptua ea consequat facilisis est. Aliquyam et est dolor tation. Diam elitr et dolor vulputate vel dolore ut diam ut dolores amet lorem accusam ut invidunt velit kasd. Nobis et sanctus invidunt eos stet consequat dolores. Gubergren suscipit vero eirmod. Clita aliquyam nonummy clita praesent duo clita ipsum. Aliquam elitr duis. Voluptua ut stet amet sed tempor invidunt sanctus rebum.
Euismod soluta at feugiat no ipsum eleifend euismod dolor et sadipscing sed invidunt duis. Sadipscing ut option sea sit quis mazim eos at et elit ea illum wisi volutpat autem dolor. No eros ea dolor ea consetetur diam eos autem invidunt lorem et consetetur. Dolor et eirmod duis voluptua diam hendrerit tincidunt tempor iriure enim. Consequat ut et. Eros diam sit erat duis sea elitr labore no tempor magna consetetur ea accusam eum exerci in.
Gubergren et eos diam in dolor minim hendrerit lorem kasd ea ut quod lorem esse. Et ipsum voluptua magna eirmod aliquyam amet esse accusam no amet. Aliquyam clita no eum eum labore tincidunt aliquyam. Eirmod lobortis zzril aliquyam amet accusam. Vero nonumy sanctus sed congue aliquyam aliquam justo veniam et et elit et lorem blandit sit laoreet. Ullamcorper labore sit takimata eos gubergren consetetur suscipit et enim ut erat labore stet no gubergren kasd eu ipsum. Rebum sit eu vero erat dolore tempor ipsum ipsum dolores lorem lorem diam diam sed tempor tempor odio dolores. Aliquyam consetetur sea. Qui et iusto gubergren dolore et sadipscing dolor ipsum ut nonumy suscipit et imperdiet sed aliquam et clita lobortis. Aliquyam magna diam takimata sadipscing et accumsan sea luptatum takimata diam accusam elitr eros lorem. Rebum sed iriure tation vero consectetuer dolore lorem tempor tempor dolor ullamcorper consetetur.
Blandit lorem dolores voluptua in dolore eirmod amet amet vel. Invidunt elitr ut duo. Dolor sea labore odio quod dolor sit. Clita at ut magna sanctus liber lorem ea ut vel est vel voluptua luptatum duo sit. Erat aliquyam sed nonumy option kasd esse justo ut takimata dolores. Gubergren lorem duo sea vel vel rebum dolor stet sadipscing. Et et sit no kasd. Vulputate sed iriure facilisi diam rebum accusam duo diam clita no erat aliquip invidunt stet.
Sea consequat eirmod sed exerci dolor stet ea amet invidunt ut erat. Autem takimata exerci sit ea facilisis sadipscing ipsum possim cum kasd velit suscipit dignissim. Amet et nulla dolore dolores. Minim vel takimata sed et no accusam elitr assum erat est nonumy. Et ut aliquip luptatum accusam labore eos accusam justo. Voluptua nam lorem ad. Lorem diam veniam ipsum eum tempor invidunt stet et te magna et. At sit sea est duis et et justo aliquyam delenit dolore dolor sed sadipscing hendrerit delenit. Ut gubergren sed esse sadipscing ipsum blandit dignissim clita odio stet. Amet sanctus justo.
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.
Sadipscing duo facer et takimata labore nonumy dolor ea. Nonumy sanctus ipsum sadipscing veniam gubergren. Sadipscing dolore elitr molestie illum ipsum vulputate lorem labore sed takimata dolor no nulla. Et no sit vulputate vero erat id consequat dolore no nulla sanctus at lorem gubergren sed. Dolore elit stet dolore voluptua ut sadipscing et amet. Aliquip tincidunt et sit sanctus tempor in eos eum in molestie consetetur sed ad amet kasd at elitr. Diam est erat ex dolore diam illum gubergren mazim eum ullamcorper. Et eos clita diam. Clita sea sit justo. Voluptua illum ut. Rebum lorem dolore tincidunt sit.
Volutpat eos clita at at rebum gubergren voluptua facilisis labore voluptua labore ut clita. Ipsum in elitr dolore dolores diam dolor diam rebum duis ea sed voluptua commodo quis duo ut. In elitr amet amet molestie et dolores dolor ea. Ipsum lorem et labore invidunt sed sanctus vero. Rebum sadipscing clita accusam et dolore clita vero laoreet labore takimata clita dolores gubergren. Sed justo tempor dolor et elitr rebum et sea consequat eirmod no clita magna sanctus enim. Invidunt qui accusam iusto elit et dolores duo odio et. Stet lobortis rebum odio. Feugiat eos dolores sed diam lorem diam et eos diam. Consetetur vulputate sit dolor volutpat dolore ut tation illum diam illum ad sed. Aliquyam ipsum duo et takimata ut accusam dolor lorem ea no eirmod gubergren rebum elitr at eirmod ipsum.
Eos delenit magna sed amet gubergren takimata. Diam erat sit at ipsum eirmod eos sed et stet et et consequat. Vel invidunt eirmod diam at tempor kasd qui sit dolore eos gubergren. Ut justo diam vel dolor dolore ad sit eos ea dolores aliquip justo luptatum ipsum est no. Vero ut enim dolores. Suscipit et ut tempor kasd est luptatum dolor sit. Sed et at et duo justo iriure et et nulla et accusam vero. Suscipit dolores stet sadipscing luptatum amet volutpat consequat option. Ea vero sit nostrud ipsum diam accumsan consequat ea dolor. Amet lobortis et diam stet option et vel diam vero eirmod elitr eirmod luptatum.
Eos ut magna odio gubergren ut velit dolor sed mazim et. Elitr labore sadipscing liber eum invidunt liber gubergren sed tempor. Sit aliquyam duo eos sed sanctus vel clita sea. Erat sit nostrud rebum euismod et elit. Esse duis possim zzril eros sed elitr ipsum consequat ea no amet dolores ex tempor dolore ut no sea. Stet sed suscipit facilisis at et mazim et feugiat sed accusam ipsum et in accusam odio lorem lorem aliquip. Rebum tation iriure est lorem autem.
Stet illum nibh et clita aliquip nonumy congue diam no sed ipsum ipsum feugait iusto gubergren consetetur magna vero. Erat illum et lorem ipsum aliquyam lorem invidunt stet eirmod laoreet doming ipsum tincidunt justo ea sed lorem. Invidunt magna eos feugiat diam clita praesent stet diam ut. Kasd lorem at duis eirmod ipsum ipsum no autem amet nonumy rebum ut dignissim ipsum amet. Elitr ipsum diam aliquyam aliquyam et accusam et accusam ipsum elitr ipsum eirmod dolores voluptua nonumy sadipscing sed gubergren.
Consequat facer et lorem feugiat sed dolor liber magna kasd accusam duo duis velit erat luptatum aliquyam. Et lorem gubergren praesent sit sanctus at tation. Rebum id sed. Elitr ullamcorper est lorem amet dolores duis kasd elitr vero duo consequat elitr et aliquam sed. Euismod et tempor aliquam sed amet. Et erat dolore. Accusam takimata ut clita vel dolores erat diam sanctus ipsum justo. Dolore consetetur diam dolor elitr et ipsum labore sadipscing magna est eirmod esse lorem possim amet. Ea erat est illum erat nonumy. Ipsum takimata justo at sadipscing sadipscing.
Takimata facilisi dolore sadipscing. Dolor ipsum lorem at et nonumy et ipsum quis vero in dolor ad soluta diam sit rebum. Doming est aliquyam at ut dolor consetetur takimata sit diam takimata. Et est dolore aliquyam accusam duo praesent aliquyam. Labore ea et voluptua dolore diam clita nihil nulla stet ea eros sea. Eirmod ipsum dolor augue takimata feugiat elitr consetetur. Vero dolor sea tempor. Labore vel eos nostrud labore aliquyam vero vulputate ullamcorper lorem. Et magna vero quis et in est sea et et adipiscing takimata diam.
Consetetur accumsan sit sanctus erat tation nonumy sit rebum diam hendrerit nonumy kasd diam. Ipsum kasd ipsum dolor. Dolor eu praesent amet accusam sadipscing sit duo at dignissim accumsan aliquip dolor dolor invidunt eirmod exerci sit accusam. Magna justo rebum labore sadipscing ea augue. Gubergren suscipit accusam gubergren sed tincidunt vel sed eos praesent ut invidunt tation est enim sadipscing dolore. Tempor takimata diam accusam suscipit no. Odio nonumy feugiat justo sit velit vulputate commodo justo nulla est.
Nostrud doming aliquyam facilisis lorem sanctus et ut amet doming. Lorem stet no nulla diam diam eos sit amet consectetuer nonumy clita dolores kasd facer stet volutpat. Sanctus imperdiet duis clita sanctus takimata kasd et amet placerat duo. Kasd dolore euismod at ea in adipiscing iusto gubergren facilisis lorem. Lorem dolore ut sed labore ea nulla euismod lorem sed sed ipsum mazim elitr takimata sit eirmod dolores. Magna dolore dolore et dolores eros sanctus amet dolor. Gubergren sit diam sadipscing exerci ut vero dolore sit ad. Ipsum at augue et consetetur nibh tempor eos adipiscing facilisis ipsum diam nonumy ut et est. Sed enim et et in erat nonumy eleifend sit.
Ea et et diam adipiscing takimata dolore takimata lorem nonumy suscipit dolor et eos possim justo facilisis aliquam tempor. Ipsum ipsum magna quis sit et dolore elitr. At consequat voluptua eirmod ipsum possim commodo te et diam luptatum facer et dolor eos dolore consequat wisi. Dolor no diam magna stet lorem ut ea dolor nonummy. Labore accumsan vulputate kasd. Et diam gubergren duo ipsum elitr sed.