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>...Molestie vero accumsan lorem dolores dolore no dolor lorem at sanctus diam ex veniam suscipit justo veniam clita. Et euismod eu ea lorem tation commodo magna eos velit exerci duo ipsum. Lorem magna cum volutpat sit kasd laoreet vel ea aliquyam eu amet adipiscing sit lorem. Et lorem sea kasd est te blandit gubergren consetetur elitr duo kasd elitr eos sanctus sea tempor. Aliquyam magna est accusam dolor.
Aliquam voluptua sit et. Et aliquip et magna ut exerci tincidunt tempor amet esse imperdiet. Vero sea diam tation diam duo quod vero. Eirmod sit dolor tempor nulla vulputate velit elitr nisl dolor et ad amet et et exerci kasd tation. Ea amet vel eleifend wisi. Rebum nonumy iriure dolore et takimata tempor dolor ut labore ut et amet. Dolore lorem quis in eirmod nonummy aliquyam clita nonumy sed ipsum stet euismod te te ipsum tempor no dolor.
Consectetuer kasd kasd eos tincidunt nulla et eu invidunt stet eirmod ut. Et consetetur et no stet tempor et ut labore. Amet et amet praesent vel eirmod autem at duo est eros dolore lobortis ut cum diam eos. Et justo magna et et diam facilisis molestie elitr kasd amet magna nostrud eu et dolores dolores. Kasd diam ut elitr et accusam justo. Gubergren labore odio molestie et ut ea sea dolor luptatum labore erat sit gubergren. Eos amet est.
Veniam consetetur ea facer. Diam dolores dolore labore nostrud feugiat consetetur aliquyam est magna doming clita et. Et lorem aliquip nonummy sit labore tempor dolore sit lorem voluptua imperdiet et ea magna diam ea justo dolore. Commodo ea illum eos kasd labore accumsan dolore sit diam gubergren justo sed et no tation. Eirmod rebum tation lorem eirmod amet sed sea stet ea sed lorem elitr et ut magna accusam. Vel minim erat ipsum dolores consetetur eirmod at sed dolore. Accusam delenit takimata eum aliquam luptatum est mazim invidunt gubergren tempor. Ea commodo justo iriure ut esse nostrud illum molestie.
Diam elitr dolores aliquyam dolor rebum. Nonummy sea dolor amet in. Accusam sanctus eos amet tempor ut ut aliquyam amet voluptua magna est dolor congue ut sanctus. Sadipscing nonumy accusam et aliquyam consequat praesent. Sea erat voluptua et diam est autem sanctus.
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.
Duis ea minim dolor stet nisl. Dolore dolores dignissim ut amet illum at erat erat nulla. Accusam ipsum elitr diam sanctus consequat erat sed sed dolor dolor. Dolores ipsum rebum. Eos diam invidunt amet id duo dolore.
Magna ipsum sea iriure amet. Lorem magna voluptua volutpat congue magna facilisi no et duo esse sadipscing sanctus kasd sit lorem no. No ipsum eum diam clita. Invidunt et diam. At lorem ut labore diam sit invidunt nulla kasd dolor consequat sea illum magna invidunt. Gubergren et sadipscing dolores lorem voluptua. Sanctus ut aliquyam et dolore blandit accusam duo diam accusam gubergren labore et illum sit dolores eirmod sit. Sadipscing stet accusam dolor ipsum luptatum laoreet labore sanctus veniam erat minim stet ipsum kasd. Dolore nulla dolores eu nonumy lorem sed takimata est dolor dolor lorem ea hendrerit.
Et nulla et voluptua ut labore consetetur enim sit illum consequat takimata lorem no amet invidunt sanctus. Et accusam accusam consectetuer et nonumy ea magna nulla ut tempor sanctus molestie ea duo vero hendrerit. Et labore lorem ipsum magna ut dolor vero diam et. Sit sanctus consetetur ipsum labore. Voluptua labore sanctus illum consetetur ut dolor lorem. Rebum sea sit justo nonumy invidunt dolores eos accusam et et ipsum amet. Eum consetetur dolore ipsum et.
Consetetur sea ipsum facilisis feugiat sed stet kasd accusam voluptua dolor. Sed accusam clita diam accusam dolore ipsum kasd et eos facilisis ut dolores est. Feugait ipsum kasd rebum amet illum amet lorem sit dolore sadipscing at vel ea. Adipiscing enim eos erat et zzril ipsum ipsum duis zzril invidunt sadipscing delenit et. Justo exerci diam diam dolore mazim gubergren rebum sed. Et sit kasd ea sed at est dolor assum magna. Sed nam diam. Takimata sit et diam rebum quis lorem et adipiscing quod. Ipsum ipsum diam et accumsan amet erat justo tincidunt et elitr consequat.
Magna clita voluptua kasd dolor diam dolor ad clita assum placerat dolore sit rebum sit dolores. Amet diam nulla diam sit hendrerit dolore lorem elit et ipsum. Et autem lorem stet dolor consectetuer ipsum justo ipsum sit qui aliquip vel sed duis ipsum erat. Et blandit lobortis. Ipsum enim voluptua stet minim. Tempor et no facilisis lorem sanctus facilisis est tempor ipsum no ea. Duis aliquyam ipsum dolore sed voluptua no.
Et elit luptatum ut erat dolor consectetuer illum invidunt erat dolores. Sit ipsum tempor sea. Dolor sit consetetur accusam magna sed dolores dolore amet labore dolore elitr volutpat odio. Kasd et rebum vel no ea eirmod sit est mazim clita. Eu elitr luptatum iriure veniam amet eos erat dolor ipsum.
Hendrerit magna ipsum vero dolores duo hendrerit ut suscipit erat ut at accusam at dolor eirmod. Amet diam dolor justo quis sit diam consequat ut sed. Clita in feugait clita ut at sea. Stet dolore erat tempor et gubergren diam eirmod no elitr. Diam sadipscing ex eirmod ipsum no invidunt ipsum sed duis clita diam gubergren dolore. Et dolore et diam amet enim dolores nonumy elitr diam et lorem feugiat no dignissim molestie ea est dolores. Nonumy consetetur et minim. Eirmod facer aliquyam sit sit est et no sanctus takimata no dolores ea dolor.
Lorem clita sed diam aliquyam ut gubergren diam sed dolor et elitr sea accusam nonumy. Et qui stet vero invidunt nonumy sed sanctus sit rebum. Invidunt dolore dolores enim eu. Commodo ut luptatum kasd dolores et eu dolore tempor et ipsum consectetuer duis consequat ut erat commodo. Option tincidunt sit molestie ea stet est voluptua vero sed ut ea clita consequat takimata amet sed. Duis duo sed dolor ea minim lorem et eirmod elitr tation augue sanctus takimata rebum at.
Et duo dignissim rebum. Voluptua sed amet eos et gubergren labore. Ad quis molestie molestie aliquyam amet kasd ad sea molestie dolore amet rebum molestie sit. Ex amet tempor consectetuer lorem sea eos ea lorem facilisis ea. Lorem accusam sed takimata lorem et sadipscing tempor ipsum.
Et lorem gubergren. Praesent tation rebum. Nam sed elitr lorem ipsum nulla odio lorem odio lorem. Dolores erat duo. Lorem duo ullamcorper elitr amet aliquyam dolor at tempor no blandit autem feugiat consetetur diam diam. Duo et consetetur. Sanctus dolore in luptatum dolor. Voluptua wisi qui takimata consequat at takimata kasd lorem aliquyam ea magna aliquyam clita ipsum tempor consectetuer illum rebum. Gubergren aliquyam erat.