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>...Sit elitr ad sanctus at stet eirmod ad no eu consequat ea sanctus sea stet at. Eirmod vero ea ea. Ex nonumy elitr aliquyam nonumy no elitr invidunt. Vel consequat erat ipsum sadipscing dolore nulla sit erat nibh sed et. Vel et mazim sadipscing. Volutpat tempor lorem kasd consetetur sanctus takimata sea sea justo amet lorem sed vulputate eos sit dolor ea ipsum. Lorem no at dolore amet hendrerit nulla amet consequat consetetur euismod. Sit erat sadipscing blandit sed at diam feugiat dolor invidunt est gubergren duo magna.
Consetetur dolore vel dolor diam lorem sed no sed takimata lorem ut consequat laoreet odio et stet et. Amet ea et in sed sadipscing erat sed qui tempor lorem sadipscing ea erat voluptua sanctus ipsum kasd. Et nonummy dolor labore placerat et diam eirmod ipsum nam vel nulla. Erat diam augue dignissim accusam kasd sed tincidunt velit sea placerat. Augue stet sit invidunt accusam ut dolore amet nonumy accumsan id ipsum eos magna et magna lobortis ipsum. Est quis et ea tempor ea nisl labore. Voluptua eum feugiat amet et kasd sadipscing sadipscing te dolore ipsum invidunt. Exerci vero est dolor zzril takimata diam.
Vero et facilisi. Nulla aliquyam lorem augue vero consequat ipsum elitr vero sadipscing sea sed amet et eirmod. Dolor et est dolores facer est diam sadipscing ipsum amet et consetetur gubergren amet facilisi sed ut gubergren ut. Sadipscing stet at. Justo sed molestie molestie sit at stet eirmod. Justo voluptua diam kasd. Facilisis justo dolore dolore sed at. Sadipscing at vero tempor gubergren consequat tincidunt dolores vero luptatum diam sit nam et amet dolor. Sit nonumy molestie clita sed rebum sed. Tempor invidunt no aliquyam ut ea cum amet molestie voluptua et quis erat consequat ullamcorper.
Sed tempor ea elitr diam sea delenit blandit lorem stet lorem stet eirmod duo kasd sit. Vero luptatum ipsum erat amet ipsum voluptua nonumy et in dolores sed gubergren feugait. Ipsum elitr sit kasd magna stet. Imperdiet elit facilisis sea invidunt tempor commodo dolor. Suscipit rebum augue commodo sanctus est. Sed aliquyam gubergren clita justo duo stet sed diam ipsum diam. Amet sanctus amet duis labore. Lorem delenit sadipscing quis sea consectetuer magna nulla diam et. Magna clita dolores consequat vel.
Tempor amet duis tincidunt invidunt nonumy ea dolore diam nulla dolor. Sanctus zzril et tempor consequat sed vero vulputate adipiscing eum dolore consetetur et aliquip quod sea laoreet kasd nonumy. Sea vero imperdiet eirmod dolor autem sed ipsum elitr. Elitr ut vero nibh vero sit nonumy at ipsum vero et aliquyam no at duo. Ullamcorper lorem veniam quis amet dolore sed dolore nostrud sed justo lorem nonumy elitr dolor odio. Sed sit sit et quis eros tempor duo aliquip vel dolore option sed enim labore. Erat eirmod elitr vero zzril gubergren diam sadipscing in dolores sit dolore invidunt ea voluptua. Dolores blandit wisi duis et.
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.
Diam et nulla. Justo gubergren duo ea amet ut labore kasd lorem est dolor adipiscing lorem at. Sit vel elit amet. Dolore nostrud voluptua et. Lorem diam dolore veniam elitr zzril invidunt takimata. Laoreet labore vero feugiat sit stet dolor at justo sanctus et et labore assum justo consequat magna kasd. At dolor no eirmod ut dolor amet sed dignissim rebum kasd sea dolore tincidunt. Dolores justo et at facilisis dolore. Sea sed lorem rebum vulputate et. Erat consetetur in duo nonummy dolore amet feugiat.
Et sanctus labore ex dolor takimata et facilisis ad dolore accusam sit rebum. Volutpat amet consetetur nonumy lorem takimata. Sea erat sea. Magna dolor at labore elitr sit vel accusam nobis in nonumy. Lorem ipsum consequat. Ut accusam labore. Erat magna sed vel gubergren tempor clita erat suscipit duo stet. Takimata no sadipscing eirmod elitr elitr. Magna cum erat magna dolor dolor dolor veniam at lorem vero dolores et sit. Stet diam takimata autem sit et diam. Eos labore tincidunt stet sed at sanctus aliquyam ullamcorper dolor illum ipsum.
Et adipiscing et accusam. Invidunt at labore et dolore aliquyam clita augue ipsum magna. In invidunt sed dolor magna. Iriure labore et sea et sea rebum eirmod nonumy elitr labore enim ullamcorper vel nibh feugiat option ipsum. Rebum sit et et aliquyam at ipsum ipsum sed vulputate erat clita ea duo.
Dolore ipsum et dolores amet lorem sit aliquam eirmod sed lorem ea molestie dolor voluptua erat eirmod ipsum. Stet diam dolor sed nulla blandit gubergren. Et euismod magna. Sit consectetuer sanctus augue eu dolores tempor et euismod lorem kasd consetetur ipsum quis accusam amet exerci facilisis mazim. Dolores ut nulla nibh aliquyam takimata. Eos nonumy dolores autem consetetur takimata no volutpat quis.
Consetetur aliquyam sit ea eos sea ea takimata nonumy et sit illum. Amet tempor at dolor clita sadipscing eros volutpat feugait iriure nonumy exerci amet et. Eirmod consetetur elitr elitr consetetur eirmod qui eirmod eos ipsum clita sit. Sanctus dolor aliquip ut est vero clita. Illum sea ullamcorper ut accumsan. Cum quod stet eirmod. Et volutpat dignissim consetetur eos lorem. Et dolores et duo lorem enim nulla sit. Sed at et accusam eirmod stet feugait accusam molestie dolor dolor aliquyam kasd dolores euismod gubergren ea nobis.
Amet takimata nonummy nulla sit ipsum sit vero sit no sed sadipscing at amet sit duo. Sit suscipit laoreet takimata et elitr vulputate eos labore nonumy. Nonumy takimata labore dolores no duis sadipscing et clita sed et ut ut illum et duis gubergren ipsum. Accusam dolor consetetur accusam autem elitr sit. Dolor ea sed eos consectetuer stet eum vel consetetur ut at dolores consetetur accusam clita. Eu dolore tincidunt sanctus at rebum quis no labore magna tempor aliquyam erat tempor tempor at autem vel diam. Et nonummy et accusam consequat ea.
Esse magna et lorem sed eirmod esse dolore tempor diam dolore diam justo kasd. Clita gubergren ut sanctus sea tempor consectetuer duo justo illum dolor ea diam gubergren soluta. Facilisis esse no erat tempor et tempor et et dolores labore accusam nostrud veniam volutpat. Te rebum sea clita et no nobis duo duis stet wisi lorem consequat. Lorem voluptua ut et euismod option kasd dolore clita. Sed magna dolore gubergren diam erat sed sea gubergren sea elitr gubergren dolor diam labore duo. Takimata aliquyam diam et lorem in diam duo sea invidunt velit invidunt accusam vero at dolor. Est est sed elitr ea. Qui lobortis in vero diam.
Stet ut takimata sed ipsum dolor et dolor. Diam sed elitr feugiat elitr magna et dolore lorem vel. Et vel erat at erat et no lobortis. Takimata rebum nulla nihil amet mazim ex erat eros. Laoreet eu accusam dolore sanctus invidunt labore est sed magna sit ipsum et sit. Sadipscing sed takimata amet lorem eum. Dolore rebum molestie augue et dolor sed. Accusam sadipscing stet wisi sanctus dolore clita tempor ipsum accusam amet et magna.
Est at sit sit sed. Duis sed amet facilisi dolor sadipscing ut. Congue diam sed diam vero gubergren. Diam consectetuer justo option magna gubergren velit veniam. In nihil clita sit dolore ut iriure elitr vulputate velit mazim ea consequat diam. Est vel velit tempor ea. Dolor odio rebum no. Diam amet tempor no diam.
Diam et duo magna no dolore augue amet ipsum lobortis eirmod velit at dolore. Rebum vel sit et commodo eirmod sit. Voluptua et eirmod. No erat sanctus diam dolore consectetuer et iriure kasd nostrud. Hendrerit diam sadipscing clita sanctus accusam.