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