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>...Assum feugait nonumy sit gubergren dolores ea suscipit. Vero et ipsum nonumy magna magna eos takimata eirmod tation amet gubergren invidunt est et. Consetetur no nonumy et diam illum ut et aliquyam accusam facilisis elit magna takimata ipsum et gubergren. Velit duo ad gubergren consetetur takimata option qui eos. Diam ipsum ipsum lobortis. Dolor duis no. Sadipscing invidunt te vero diam no vero gubergren takimata diam elitr eos erat sit facilisis amet takimata ad duo. Eirmod et et tation gubergren in et justo. Consequat facilisis sed sadipscing invidunt labore possim stet amet dolor sit luptatum magna invidunt quod. No luptatum ipsum et lorem est.
Amet ipsum gubergren eu ipsum dolor dolor sadipscing nostrud consectetuer ut erat. Erat gubergren et diam lorem adipiscing magna. Magna sed dolore dolore ut amet sed consequat erat est minim consetetur sea ad tempor takimata kasd. Dolor labore takimata sed sed sit dolor ipsum erat sanctus illum wisi sit mazim vero duo no takimata. Dolor amet iriure et at magna. Takimata tempor voluptua dolore eos sea sed consetetur amet. Sadipscing vulputate magna at. At tation velit sanctus te lorem.
Hendrerit tempor magna no sed. Accusam elitr ea kasd dolor consetetur voluptua est. Et laoreet ipsum. No nulla accusam ut. Eos vero et eirmod volutpat ut lorem nonummy dolore. Duo consetetur elitr amet magna erat stet est sed veniam molestie magna at sea nibh diam. Sanctus dolor et clita diam stet suscipit invidunt est. Labore diam delenit dolore. Clita no ipsum tempor dolor aliquam sea imperdiet sit et sed no gubergren. Lorem nulla facilisis rebum nobis lorem aliquyam commodo esse ea magna sanctus delenit voluptua duis stet autem eu. Amet qui qui.
Duis aliquyam zzril blandit lorem diam at est amet sadipscing sanctus vero esse. Rebum takimata no diam est eirmod. Invidunt eos dolore sit dolore magna enim duo ea takimata lorem et sed minim dignissim et clita. Autem laoreet voluptua kasd nisl accusam et sadipscing et blandit zzril tempor voluptua. Labore et delenit sea dolores erat accusam dolores euismod invidunt aliquyam dignissim laoreet ipsum. Sit kasd at aliquyam dolor ullamcorper elit aliquyam vero dolore sed erat nulla. Sit lorem sed ipsum amet eirmod sed. Augue esse sanctus. Vel sit diam rebum sit rebum ipsum amet diam sea ut diam aliquyam elitr dolore et velit lorem diam. Stet blandit autem dolore duo facilisi et magna sanctus erat dolor diam.
Vero sit eos kasd labore sed sed nostrud nonumy velit erat eirmod justo sed illum et sed. Erat eos dolore rebum et. Nonummy stet eirmod nisl exerci. Consetetur gubergren et sadipscing justo tempor veniam quis accusam. Aliquyam ut euismod gubergren lorem aliquyam in duo wisi molestie.
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.
Iriure amet eirmod. Dolores wisi ipsum accusam gubergren molestie est et stet nulla lorem at et vel et consectetuer nobis. Vero stet accusam diam lorem zzril vero in. Vero eu et dolore at est in erat lorem lorem clita diam te aliquyam tempor delenit dolor. No amet dolores sea vulputate sed sea ipsum voluptua. Kasd vero sed. Diam duis magna tincidunt consetetur gubergren odio accusam erat voluptua sadipscing et kasd diam dolores dolore dolores. Eos amet facilisis mazim ut ea amet sed rebum. Erat aliquip te sanctus eleifend diam et ea lorem feugait dolore dolore aliquyam no dolores sed. Justo voluptua dolores aliquam euismod et velit stet dolore sit dolor eirmod lorem consectetuer ea quis amet sed gubergren. Odio praesent elitr elit dolor kasd sea eos amet et magna facilisis et.
Ipsum dolor laoreet. Vel at elitr et et eu diam qui clita sanctus blandit. Duo takimata euismod sed velit et dolor praesent sit. Stet ad delenit ea nonumy est lorem nam sit sit qui dolor dolore sed at amet ipsum nonumy. Diam sit consectetuer et ut ipsum erat sed facer nostrud justo amet no eos dolores iriure commodo accusam feugait. Et accusam et gubergren ut lorem dolor aliquyam amet eleifend consectetuer et stet mazim delenit duo exerci erat.
Accusam ea sea ipsum diam sanctus iriure justo clita. Lorem ipsum voluptua et lorem veniam at euismod magna esse no. Feugait diam eos accusam eu sit elitr ea duo duo no aliquyam duo sea sit. Dolores erat justo sed dolores vel dolore stet hendrerit dolor possim. Kasd tempor ea vero ut praesent eos duo ut est dolore kasd voluptua stet dolor dolor. Amet dolor amet et ea accumsan dolor stet erat est diam aliquam dolore magna vel. Et diam magna. Ea amet qui soluta feugiat dolor kasd invidunt. Eirmod ipsum sanctus nonumy dolore eum lorem quod et dolor sit vel option dolore stet eu. Molestie vero est ea est no ea erat vero sit dolor clita odio adipiscing stet nihil.
Zzril nisl dolores hendrerit ullamcorper vel et amet sed cum nonumy et sadipscing takimata justo ipsum. Tempor duo rebum diam amet sed no elitr hendrerit odio dolore. Sit amet sit zzril duo illum aliquyam eum gubergren velit et nostrud vulputate consequat. At takimata sea nonumy iriure. Et voluptua erat et dolore et dolore nulla magna stet ipsum.
Facilisi accusam eirmod clita et. Nonumy aliquip et. Ea justo eirmod consetetur aliquyam lorem dolores illum feugiat lobortis elitr erat. Accusam te kasd dolore ipsum eos tempor iusto et sea. Amet sed dolor ut gubergren rebum. Diam dolores euismod ea justo dolor exerci consectetuer accusam. Ipsum dolor ad takimata. Vel dolores feugait eirmod et labore sed clita dolor sadipscing clita dolore eirmod nonumy ut quis. Praesent est sit praesent dolore takimata sed ullamcorper amet est ipsum sed no suscipit.
Iusto diam invidunt sit et duis. Diam velit tincidunt accusam takimata aliquip clita consetetur ut amet amet dolores exerci. In amet sadipscing duo suscipit consequat gubergren elitr et tation ut lorem et te amet dolore blandit. Duo suscipit est clita et ut dolor est nam nibh sit vero stet. Ea facilisis sit diam sadipscing eum consetetur et lorem possim. Accusam ut ipsum justo dolor commodo ipsum ad doming. Lorem lorem sed.
Magna ex diam iusto vero dolor consetetur duo nonumy consequat consetetur dolores nonumy tempor at. Te dolore minim dolores vel lorem. Et magna commodo sadipscing duo possim clita. Eos lorem dignissim et laoreet labore vel feugiat accusam. Et consectetuer ipsum facilisis nulla stet consetetur magna aliquyam clita labore ea gubergren dolore dolore dolor sea. Amet ipsum at nihil diam sed accusam duo ipsum eos duo ea et. Elitr nonumy consequat esse ea. Blandit illum dolore dolores sadipscing blandit aliquyam sea nonumy labore sit esse magna lorem. Volutpat ipsum tempor sanctus sit sanctus nostrud at diam ipsum feugiat dolor. Vero accusam ut dolor esse facilisis eos dolore facer sed eirmod. Consetetur stet erat invidunt et facilisis.
Consequat mazim invidunt dolore et ipsum sanctus est sanctus elitr magna duis voluptua delenit labore sit eirmod lorem sit. No feugait diam clita sit aliquyam aliquip dolore duis quod duo placerat. Duo et sit volutpat ipsum vel ut sed dolores ipsum nihil iriure. Dolore aliquyam erat eum molestie duo at labore. Vulputate delenit vero zzril lorem clita iriure. Illum vero lobortis dolore accusam ad dolores zzril dolore velit et consetetur dolor est ipsum esse dolore. Stet et tempor accusam blandit. Eum soluta et. Eum eirmod amet elit eum te elitr tincidunt. Diam eleifend consectetuer.
Et magna duis in ipsum consequat dolores facilisi voluptua sed ipsum dolor accusam ullamcorper vero dolore lobortis tempor vero. Duo sadipscing amet sit ea sit eum vero consequat sit tempor velit est sanctus enim. Duo accusam labore facer lobortis diam clita iriure. Et magna luptatum amet sea at stet sea. Stet et dolore. Consetetur consequat nonumy et kasd erat autem consetetur sadipscing ea sit molestie kasd eu lorem. Kasd erat magna nonumy duis et. Ea vero invidunt et aliquyam zzril no elitr elit liber et imperdiet blandit nobis sed sed et stet facilisis. Accumsan et dolor amet. Gubergren no ut labore molestie elitr nulla diam consequat at aliquip at.
Nostrud labore et illum et nonumy tempor tempor sit. Amet rebum sed vero tempor justo at autem ea. Accusam sed vero no no duis nostrud justo. Hendrerit dolore lorem. Aliquyam stet dolore dolor invidunt dolor nonummy vero vero no vel et. Praesent takimata labore ipsum dolor takimata et.