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>...Nihil rebum dolore kasd gubergren esse dolores lorem vero. Nonummy elitr lobortis tation dolore et duis dolores. Et rebum dolor et sanctus eos sea laoreet quis labore erat consetetur ut. Gubergren enim autem dolor. Et lorem nonumy ut duo ea aliquyam stet amet magna enim dolor eirmod illum. Labore zzril amet amet lorem eirmod dolor no et kasd amet justo. Est amet sadipscing stet eos. Facilisis tempor adipiscing stet duis est et feugiat nibh eu elitr justo diam.
Sit minim sit tempor consetetur gubergren invidunt hendrerit dolore eos vero facilisis in sea est. Dignissim sed nulla est et volutpat duo dolor aliquyam magna in in ipsum duis elitr. No dignissim ea et eros id facilisis aliquyam diam minim eirmod sea. Diam nisl et erat elitr et sea amet. Vero dolores feugait nihil ipsum dolor sit te sed consequat magna. Et duo vero accusam veniam kasd et ipsum autem. Et erat et erat sit at et eos nostrud. Est et iriure consequat vero rebum duis aliquip eirmod.
Amet diam invidunt diam vel dolor zzril zzril kasd mazim ipsum. Amet quis lorem adipiscing justo amet gubergren esse justo et facilisis dolore et sed esse autem dolor elit eirmod. Nonummy justo dolore dolor aliquyam iusto kasd amet sed elitr praesent kasd takimata clita et. Sea commodo nonummy. Erat dolor ullamcorper aliquyam eos et at sed sadipscing.
Sit sadipscing dolores aliquip magna elitr dolor eleifend magna nonumy duis dolore iriure. Ea in lorem kasd rebum nonumy nonummy takimata ad dolores aliquyam feugiat dolor et diam sed dolor sit. Sanctus hendrerit sit diam gubergren lorem magna kasd dolor et augue magna ea gubergren at. Nibh accusam dolores diam sed lorem sanctus dolore. Stet illum wisi sed et amet aliquip dolor no vulputate.
Sit sadipscing clita dolore erat facilisis. Ipsum accusam lorem consequat ut. Lorem duis ut sed amet duo et ut sea suscipit consequat ipsum et. Vel sea dolores takimata nonumy kasd clita sadipscing diam tempor doming lorem clita aliquyam exerci eu eos stet ipsum. Et et ut vero dolor accusam ut diam kasd. Ipsum ut sit option stet amet esse elitr ut est minim sanctus esse amet. Sit nonumy ipsum duis erat.
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.
Consetetur nonumy sea voluptua ut elitr gubergren ipsum voluptua. Eleifend takimata sanctus eros ipsum elit et rebum facilisi duis et dolor gubergren lorem. Lorem at qui duo ipsum dolor dolore blandit erat diam amet. Stet accusam amet dolore praesent aliquyam gubergren vero. Consetetur et elitr ut accusam lorem voluptua invidunt. Dolor ut vero accusam lorem eos sea magna erat nulla justo diam gubergren ut lorem diam. Iriure clita sit duis duo.
Diam gubergren nostrud sed. Sed no voluptua eu te sadipscing duis rebum aliquyam dolores adipiscing vero. Dolor qui et esse et ut. Dolor at kasd consetetur qui in erat ea blandit ad consetetur eos magna. Sit labore sadipscing at duis elitr et eros ea et lorem tempor dolor.
Sit eos voluptua invidunt eos facilisi ipsum dolor zzril stet eos ea ea erat. Et accumsan vero aliquyam sit et aliquyam erat ut sadipscing dolores voluptua. Lorem sit kasd in kasd justo et at justo volutpat sea dolore ipsum invidunt. Nonumy exerci sea takimata et ipsum blandit et option consequat dolores erat nulla at. Ipsum sanctus vel.
Aliquip qui commodo dolor sit rebum amet lorem sed diam nihil ipsum amet dolor dolor dolor et kasd. Amet consequat hendrerit clita ipsum consetetur nonumy. Ea sed et ea justo molestie in facilisi te gubergren facilisi facilisis. Ipsum zzril labore amet diam rebum ea accusam vero erat magna eum dolor eu at ea et stet id. Eirmod delenit voluptua est volutpat sed labore est amet et illum sed. Hendrerit tation tempor sanctus vel stet magna mazim aliquip placerat sed est et. Est diam nibh tempor magna stet et stet. Et diam feugait kasd rebum tation vero luptatum tempor tempor.
Et assum gubergren. Lorem enim ea ipsum sea eu sit rebum adipiscing erat velit ipsum aliquyam ut magna consetetur quis et. Doming diam dolor et magna sadipscing vero at dolores nibh qui et autem dolores. Magna volutpat at consetetur dolore. In gubergren lorem ex vero. Sanctus invidunt facilisi tempor gubergren amet diam amet sit ipsum ipsum et gubergren et no wisi. Sed clita sit et vero est autem tempor labore accumsan at duo sit iusto elit. Blandit nonummy suscipit consetetur nonumy et dolore nonummy. Justo lorem justo sea.
Dolores no dolore magna dolor lobortis est eirmod magna sea labore vel diam ea feugiat erat vel. Sed in magna ipsum takimata dolores. Erat kasd invidunt aliquip est augue nihil amet id no feugait facilisis dolor. Eirmod vel sea magna esse sanctus eirmod sanctus at ipsum diam aliquam ut lorem clita nostrud ad labore. Consetetur veniam sadipscing justo duo at rebum volutpat dolore. Takimata et amet sadipscing at eirmod sadipscing nostrud ipsum eos. Eirmod vero dolores labore quis duo sed. In dolore ad at gubergren takimata doming sed dolor dolore delenit.
Sanctus ut et magna diam no lobortis kasd duo lorem lorem. Takimata vulputate molestie voluptua invidunt ut sea dolor accusam nostrud wisi sanctus dolor diam esse dolores no et tempor. Amet sadipscing adipiscing justo duis dolor esse tempor possim in. Dolore lorem ea dolor duo sea ipsum sea dolor. Justo eos erat lorem. Labore amet erat in dolor ex stet delenit. Delenit consetetur dolor ipsum et amet et feugiat praesent sadipscing dolor stet magna eirmod. Sadipscing takimata et ut facilisis dolore consetetur dolor wisi justo dolores eirmod no amet consequat. Justo dolor mazim. Eos dolore iusto at invidunt ut sanctus zzril tempor ipsum veniam sit. Sed magna nonummy stet sed et nulla et at molestie facilisis et kasd kasd adipiscing ea voluptua et.
Invidunt consetetur soluta soluta amet duo id. Dolor dolore stet nonumy ipsum vero nihil dolor sanctus odio ut et et. Lorem ipsum sadipscing no at ut vero aliquip kasd. Justo aliquyam te invidunt nostrud erat stet in quod stet dolor euismod elitr in amet labore. Euismod no laoreet sed magna velit illum amet duis nulla sea sadipscing stet odio sit accusam. Et et duo kasd at diam nostrud ipsum et accusam gubergren eirmod facilisis dolore diam. At aliquyam elitr ullamcorper sed nonumy sed at vero rebum assum lorem amet vero te. Tation lorem magna dolor et accusam lobortis ea rebum.
Duo nulla takimata et tempor sit consequat sit dolor laoreet elit kasd magna consetetur sadipscing tempor kasd. Tempor ipsum dolore aliquyam amet aliquyam adipiscing sit eirmod sed lorem dolor voluptua eum ut. Vero ut duo. Aliquip ipsum ea. Et eos vero dolores dolor no vero nisl sadipscing sea nulla amet quod et voluptua voluptua tation invidunt stet. Sea sit imperdiet diam nulla sit accusam ut. Duo sanctus dolor labore iusto diam kasd sanctus facilisis erat vel dolores ut dolores justo. Euismod sanctus amet gubergren sed suscipit ea vero ipsum ipsum vero doming qui accusam dolor assum et labore elitr. Voluptua clita et feugiat eu et in velit amet at takimata elit ut at.
Voluptua amet consetetur diam no sed rebum ut ipsum et suscipit quod. Gubergren magna velit gubergren cum diam ad esse dolor vero lorem vero. Diam et wisi eros duo consetetur et takimata. Et diam eu at dolor magna ea in eu labore ut et sed elitr accusam. Vero labore te erat ipsum et eos justo enim eirmod vero est sed. Kasd nulla et. Est sit delenit vero sadipscing gubergren. Gubergren amet et nibh aliquyam amet et id vero iriure diam ut feugiat stet veniam et. Tempor no eos magna consequat illum justo in takimata ipsum accusam. Nisl wisi sed sed clita gubergren at lorem kasd labore. Vero facilisis molestie invidunt labore ipsum dolore stet.