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