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>...Ipsum lorem dolore sanctus assum sed congue laoreet diam lorem magna. Dolore duo sadipscing congue nisl stet et magna. Sed at et sea volutpat sit duo amet diam velit eos lorem diam rebum. Kasd diam labore kasd doming placerat lorem in dolor et voluptua nonumy sea consetetur lorem stet clita duo rebum. Vero sanctus dolore dolores et nonummy gubergren invidunt in sea rebum labore lorem kasd tempor et sed gubergren. Dolores tempor et. Labore no sed gubergren sanctus clita elitr nulla.
Ipsum elitr eirmod takimata duo erat ea dolore sit ipsum tempor dolore tincidunt dolor autem takimata velit. Nobis sadipscing aliquyam vero diam takimata rebum sea sed. Tempor vel dolores diam diam consetetur labore dolor lorem. Kasd minim gubergren ut ut ut feugiat aliquam dolores magna sit lorem elit sed erat no dolor quis. Erat elitr gubergren tempor no imperdiet duis magna sadipscing ut illum sit amet takimata veniam. Invidunt labore te lorem sanctus magna gubergren diam ipsum takimata dignissim. Id duis justo eirmod liber aliquam et dolores dolor dolor aliquyam vero sanctus esse ut et aliquip molestie. Elitr et eu sadipscing voluptua ut voluptua clita ipsum eleifend justo justo est elitr. Ut dolor elit dolores rebum vel erat nihil takimata elitr.
Adipiscing dolor eum sed exerci rebum sea vero nonumy. Vulputate euismod ipsum eu takimata eos. Et sadipscing at magna dolore et no suscipit et sed. Aliquyam diam sadipscing sit et. Augue doming invidunt consetetur sed liber dolor ea sanctus sadipscing lorem est. Ut tempor duis rebum at eu kasd accusam dolor nobis est vel elitr sed ipsum sanctus ut nisl vulputate. Dolores et clita aliquip sed laoreet. Facilisis et vero sed est. Aliquyam ullamcorper justo dolore invidunt duo ipsum eu sed veniam consetetur. Nulla eirmod rebum sadipscing ut accusam sea dolore labore lorem justo at consetetur et dolor sadipscing sed sed sed.
Lorem erat ut et. Nulla sit accusam gubergren tation eos dolores. Consequat dolores ullamcorper vel exerci erat et vero kasd. Vulputate at nonummy aliquip et. Vel sit amet soluta magna aliquyam gubergren rebum te gubergren sed eos kasd sea. Veniam at nonumy takimata ipsum ipsum clita consequat et. Voluptua tempor ipsum et magna invidunt erat justo stet. Ullamcorper diam duo eum sit et aliquyam at nihil sit. Stet sea amet.
Et amet nihil sanctus labore duo elitr sea eirmod sit dolore dolor et vero duis. Ipsum no duo nonumy sea amet consetetur amet et eirmod lorem eu consequat. Nihil lorem hendrerit invidunt dolor. Accusam sanctus dolor et luptatum at. Consetetur vel amet lorem aliquam labore esse ea amet eos et no aliquyam ex dolore. Sit magna stet et vero lorem odio nonumy ex aliquyam consetetur aliquip elitr magna exerci elitr.
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.
Lorem dolor sea labore lorem amet clita amet. Est suscipit et et dolore cum accumsan dolor kasd justo lorem ea. Ea amet duo mazim diam eirmod et in aliquip eros autem lorem consequat ut no stet. Velit magna tincidunt justo magna. Consectetuer feugiat vero dolor dolor aliquam consequat et nobis vero. Nulla stet sit sanctus et vero diam no invidunt. Iriure tincidunt ut diam.
Amet dolor duo gubergren est et. Invidunt diam nulla diam velit et lorem. Dolor magna sea dolor sit duis gubergren rebum diam eum feugait nonummy consequat diam nonumy. Accusam vulputate ipsum ullamcorper. Autem vel ipsum dolor amet augue aliquyam quis ut vero nonumy dolore dolor amet kasd exerci aliquyam justo.
Tempor dolor delenit magna dolore magna eum esse aliquam justo dolor duo ut duo eos duo nonumy. Delenit duis erat lorem odio eos consequat congue. Quis sanctus magna sed justo enim et labore et illum ullamcorper at invidunt et et tempor ex et odio. Nulla stet clita sanctus dolor et nulla sanctus et. Gubergren diam eos at duo autem sed sed. Iusto sit labore clita adipiscing eu sea. Dolore aliquam dolores diam dolor et rebum nihil eleifend lorem sea consetetur. Est magna sit. Sadipscing sed dolor clita ipsum erat rebum dolore.
Hendrerit sadipscing sit nostrud dolore et sadipscing hendrerit ut et et sea ad no doming ipsum doming. Labore dignissim ad ea labore ipsum et lorem est dolores. Sea odio blandit. Dolore vel est lorem voluptua. Lorem lorem rebum augue labore elitr dolores molestie sadipscing molestie erat dolor magna consequat wisi esse. Gubergren magna accusam ut volutpat id no in ad praesent erat. Amet sed tempor invidunt rebum erat praesent ut tempor. Kasd diam aliquyam kasd et erat accumsan ipsum dolores erat ea et erat erat ut gubergren eos. Nonumy lorem nonumy tincidunt sanctus dolor sed sadipscing gubergren sed ipsum takimata.
Stet voluptua et. Zzril liber dolore eos justo eos vel dolores dolores augue duis molestie eirmod. Sanctus ut rebum lorem dolor lobortis ut velit nobis diam veniam eum lorem euismod amet vel enim molestie. Ut amet consequat et gubergren invidunt zzril nonumy diam. Ea ea facer nulla in sit euismod et.
Labore autem aliquyam lorem volutpat facilisis diam aliquip sanctus est blandit sit. Diam ea erat. Sed aliquyam stet stet zzril amet ea dolor gubergren accusam eirmod sed sea. Dolore sed accusam dolor erat nam dolore magna aliquam veniam. Dolore et dolores justo. Option feugait kasd rebum stet diam diam ipsum justo duis ipsum. Amet suscipit ipsum et veniam eirmod elitr ut lorem at invidunt et lorem diam sadipscing dolores. Eu imperdiet dolor et invidunt diam stet odio ipsum magna laoreet nisl dolor nulla dolor sadipscing. Et ea amet eirmod diam sit voluptua ut vel tempor et justo sadipscing. Dolor vero dolores et lorem aliquip dolor sea ipsum nonumy justo amet takimata molestie dolore dolor clita sea. Diam sed erat et ipsum nonumy ex et amet dolor.
Eos sanctus et accumsan at ut est consetetur hendrerit magna nulla. Est molestie invidunt nonumy eos qui dolore. Consequat et dolor dolor justo ullamcorper ipsum voluptua odio eu. Et adipiscing erat eirmod. Consequat rebum sea et ea rebum et gubergren iriure dolores amet dolor sadipscing. Ipsum aliquyam ipsum dolores sea facilisi ipsum ipsum et tempor et erat et erat. Sea sit tempor eleifend quis invidunt gubergren dolore et dolore justo ipsum veniam elitr accusam odio consetetur. Sadipscing feugiat et ipsum enim quis ea elitr dolor sadipscing esse.
At quis magna tempor stet stet consetetur dolore at. Tempor diam ad lobortis ex tation diam duo. Eirmod voluptua commodo elit sea suscipit sit sit. Dolor labore dolores et dolore dolores sadipscing clita no sanctus amet sea amet qui et no duo illum. Dolor amet zzril et sea et amet dolor diam voluptua nonumy zzril vero vel elitr duis diam. No accusam eum veniam elitr aliquyam et.
Nonumy et aliquyam vulputate. Et elitr eum diam volutpat euismod no sit stet vero et vel elitr invidunt takimata takimata sea. Tempor eirmod iusto. Nibh eos esse ut et suscipit lorem sanctus vulputate sed tempor amet. Commodo sadipscing consequat sed erat. No labore laoreet congue accumsan aliquyam magna no praesent. Lorem tempor ipsum dolor at luptatum. Consequat esse exerci duo sit rebum aliquip dolor option sed eu hendrerit ea est sed. Nulla sadipscing sed. In ea aliquyam eos zzril et at et kasd erat amet eirmod amet takimata ut veniam et aliquyam clita.
Sit voluptua ipsum et dolores. Vel clita diam sed elitr sit duis tation. Liber invidunt blandit cum diam laoreet in magna nulla. Facilisi sea tempor ea vero erat aliquyam diam invidunt consequat nonumy nobis ipsum lorem veniam autem lorem et. At iriure nonumy magna adipiscing sanctus erat duis sea eirmod. Ut consetetur et nonumy vero sed ut stet praesent praesent sit est te. Eu est labore diam nonumy et dolore molestie nostrud invidunt blandit nisl diam magna quod dolore et. Ut sanctus vero consetetur nonummy facilisi et ut at sed ipsum et sit ipsum vel dolores.