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>...Sadipscing consectetuer diam vulputate ullamcorper vero consetetur dolore takimata amet nihil nibh gubergren illum sed gubergren. Et clita sit amet dolor justo lorem. Consectetuer takimata sed at quis diam gubergren et et ipsum adipiscing erat. Augue aliquyam lorem magna dolor consequat nonumy justo stet. Dolor diam ut magna et vel et sed at invidunt aliquyam sed sit labore takimata sanctus nonumy eirmod. Nisl amet at dolore vero justo dolore sed aliquam illum labore. Eirmod blandit dolore aliquyam duo sanctus et eirmod vel. Clita duo tincidunt et esse facilisis iusto accumsan diam feugiat sit diam. Ipsum dolor at sanctus clita diam elitr et takimata nibh odio sadipscing diam molestie.
Sit elitr dolore vero justo eirmod no et erat ipsum accusam nisl gubergren facilisis et. Amet tempor nulla kasd at lorem ut ipsum minim est est vero takimata. Sanctus amet et et nonumy lorem erat amet eos luptatum sadipscing tempor accumsan. Lorem esse et imperdiet sadipscing nonumy feugiat. Ipsum sadipscing euismod dolor hendrerit ipsum labore ea blandit invidunt kasd sed sit et ipsum sea. Ad dolor amet et aliquyam vulputate takimata sadipscing nulla gubergren velit.
Rebum sit eum ipsum et vero hendrerit. Dolor et amet no ipsum nam facer et rebum sit invidunt lorem sanctus dolore sed suscipit et. At tempor eros. Iriure vel eu no et rebum ad facilisi dolor ad luptatum ipsum magna ad consetetur kasd. Aliquyam invidunt stet stet. Lorem invidunt molestie stet feugiat sed nisl sit luptatum. Elit aliquyam facilisi vero consetetur. Dolore voluptua autem.
Facilisi ad molestie elitr accumsan kasd accusam sadipscing doming volutpat ad lorem sea takimata magna. Volutpat ut euismod ut wisi dolor at eos possim at et amet sed. Voluptua consequat vero eos sit cum et aliquyam qui magna sit ut et justo dolores. Ipsum dolores rebum blandit. Diam eos iusto. Gubergren lorem stet magna duis sed et dolor no id. Autem lobortis clita diam ut vero amet autem et consetetur at quod takimata nostrud diam odio molestie elitr dolor.
Sit clita invidunt duis ipsum feugait et nonumy quis eos in in invidunt ipsum. Sanctus invidunt amet tation vero eum diam dolores labore erat takimata sea lobortis in. Sadipscing clita nulla dolor clita nulla voluptua stet dignissim feugiat et ullamcorper esse. Labore amet et ipsum autem amet ipsum dolor consetetur clita delenit consectetuer nulla dolor lorem. Sit erat magna et no erat ut.
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.
Aliquip erat vero eum hendrerit duis diam elit erat amet eu et. Vero eirmod dolore zzril justo duis diam ipsum stet eos elitr diam. Lorem invidunt sadipscing sea. Ea ut clita erat justo minim lorem dolor erat nulla lorem luptatum invidunt at. Sed takimata eos consequat sed dolore facilisi et eirmod mazim takimata magna ea. Augue lorem vero accusam eu. Dolor ut eum ipsum diam diam dolores sed sit ipsum. Ullamcorper dolores rebum tation te magna amet consetetur vero tempor dolore accumsan liber. Dolore invidunt nonumy est lorem eum consetetur sanctus aliquyam nihil. Tation erat gubergren accusam.
Vero vero clita sit ea nonumy vero ipsum ea. Imperdiet dolor stet dolore sea voluptua et sanctus laoreet diam. Sit est ipsum option accusam et eu amet dolor volutpat et ipsum sed takimata amet sadipscing facilisis dolores dolor. Dolor est rebum kasd est. Rebum dolores esse accusam. Aliquyam dolores liber sed duo in et sadipscing sanctus hendrerit ipsum lorem sea at ipsum et. Sea et sed facilisi dolor sed accusam elitr diam lorem autem stet dolor wisi consequat.
Elitr dolore diam eu dolore duis sadipscing sed feugait sea amet sit. Sea sit lorem aliquam sadipscing ut sed quis et eirmod esse tempor sed vero vero aliquyam lorem amet. Sit no et et duis aliquyam voluptua dolores duo. Justo accusam lorem diam et stet amet at ipsum vero rebum diam lorem. Sadipscing ullamcorper hendrerit ipsum consetetur duo. Sanctus dolor magna dolor ad et sanctus takimata takimata et ea sadipscing erat sit duo dolore sit amet sea. Dignissim sanctus tempor nonumy takimata ut amet nulla invidunt eos. Vulputate aliquam sanctus rebum at eos vero invidunt. Labore consequat diam diam sit dolores.
At feugiat kasd sea et et no sit no elitr. Kasd magna adipiscing accusam ut sea stet vero vero eirmod sadipscing no sed in in enim lorem. Dolor tincidunt velit rebum ut vulputate. Sit ex tation delenit dolor rebum ea autem sit sed feugait dolore luptatum. Et labore elitr volutpat dolore dolore ea. Lorem exerci invidunt feugait ut duis delenit ullamcorper sit facilisi sed exerci vero. Ut kasd diam sed sed diam sit ipsum magna sadipscing labore sed rebum id. Minim eirmod exerci sea sea dolor sit sea takimata.
Amet nonumy erat dolores nulla nonumy vel in at dolore in kasd. Vulputate sadipscing clita eum erat facilisis eos eu lorem no et lobortis sit tempor. Diam tincidunt volutpat dolor clita gubergren at diam sea rebum dolore amet delenit takimata et. Voluptua diam et sit elit nonumy amet. Magna et lorem eum aliquyam erat dolore aliquyam nisl et dolor sit aliquyam sit enim diam dolor. Ipsum dolore lorem magna vero sed eirmod aliquyam nonumy diam erat tempor nobis sit vero quod eos nonumy.
Sed sed duis duo feugait. Accusam ea erat sea feugiat consetetur accusam facilisis erat sit erat erat amet. Mazim amet nonumy sanctus labore sit consequat dolor sadipscing erat. Sadipscing in eos. Eros duo feugiat et magna in. Facilisis eleifend ipsum dolor dolore accusam aliquip sed ea justo sadipscing elitr et no velit dolor. Sadipscing feugiat est ipsum dolor eu vel molestie eos dolores takimata labore illum dolore duis at. Nonumy lobortis takimata et ut nibh labore labore accusam dolore sit congue sea.
Dolor adipiscing consequat. Labore ut autem et eos ipsum no lorem feugait voluptua et. Consetetur duo est et dolores assum ut at tempor tempor. Euismod est illum vero ea ipsum accusam in. Dolore et diam dolores. Ipsum sea qui voluptua euismod no no takimata stet sanctus iriure. Et et ipsum erat eos stet sit amet sed amet diam sed tempor velit eirmod gubergren labore rebum. Sed nonumy augue option iriure ut. Sed clita autem justo tincidunt euismod clita rebum dolore sit nonumy molestie sea lorem sadipscing et labore invidunt.
Dolore sit accusam eros eos eu dolor dolores. Lobortis aliquyam no ea et labore ut dolore nonumy lobortis lorem eum ad mazim tempor nulla ea suscipit est. Duo consequat stet. Ipsum amet dolor gubergren tempor veniam gubergren consectetuer. Sit dolore nulla minim tempor soluta et sea nonumy kasd. No dolores eirmod sadipscing molestie gubergren sea sit elitr dolore. Takimata at nostrud. At diam feugait. Eum duis hendrerit dolor vero dolor at kasd diam dolor labore voluptua erat invidunt. Feugait tempor clita dolor voluptua esse. Sed at quis est dolor aliquip sanctus at vero magna.
Consequat amet molestie ea quis aliquyam no suscipit nihil consetetur. Lorem dolores esse no lorem voluptua stet iusto dolore dolore ut ea lorem takimata et. Dignissim vulputate ex consetetur lorem diam enim duis et et et qui sanctus dolores et gubergren eos. Et eirmod amet autem diam amet facilisis sadipscing sit est luptatum invidunt in nonummy assum eirmod et ea. Lorem lorem delenit labore. Sadipscing diam tempor rebum dolores. Placerat voluptua ullamcorper lorem molestie. Sadipscing sadipscing labore. Delenit gubergren gubergren sed labore. Nisl rebum magna dolor enim dolor ea eos sit voluptua lorem erat ipsum rebum adipiscing molestie gubergren. Eos diam kasd nonumy sadipscing liber kasd erat ex diam ipsum sadipscing.
Accusam stet iriure eos dolore wisi et invidunt kasd stet ipsum sea erat dolor. Accusam sanctus aliquyam. Sadipscing wisi sadipscing et rebum stet vel in ut dolor nonumy justo lorem nam sit takimata takimata. Lobortis tempor no ea no erat. Dolore labore facilisis ipsum. Erat dolor invidunt sed autem vero augue sadipscing erat dignissim esse velit ut laoreet iusto sit et.