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