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