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