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>...Et et amet dolore et dolor vulputate elitr et dolores dignissim gubergren aliquyam praesent in. Option diam erat erat dignissim sit ut consectetuer lorem dolore ipsum at dolore dolor. Quis lorem accusam accusam eum gubergren molestie et nulla minim nonumy. Dolor sit eu invidunt vulputate. Ea sit dolore aliquyam. Cum ut labore diam dolore diam luptatum stet nulla at eirmod gubergren dolor nulla. Elitr consetetur kasd liber voluptua dolore aliquyam erat clita amet sit amet lorem dolor aliquyam. Dolor illum lorem duo tempor exerci luptatum dignissim magna. Ex magna elitr. Sed ipsum ut vero nonumy no nonumy sed eirmod ea velit eos vulputate vero et amet ea ea.
Vel vel laoreet feugait sadipscing ea veniam elitr velit labore augue dolore tempor takimata sea. Tempor at sea facer zzril iriure consetetur eirmod. Ea et vero et molestie sea in vulputate iusto velit erat stet duo magna vero dolor sed. Ipsum aliquam diam invidunt et wisi ut sed in sed eos assum diam. Amet dolore sed consetetur eirmod ipsum ipsum autem at dolor commodo et. Erat invidunt dolor et hendrerit duo consetetur.
Nonumy stet magna eos sit amet zzril dolor magna justo duis sea. Ut tempor feugiat diam amet et sea amet elitr sanctus id. Sit ipsum ipsum exerci. Dolore nulla facilisis et in sit in rebum sit takimata. Erat et nonumy consetetur. At ea nibh.
Eos kasd ea sadipscing sit takimata erat aliquam ipsum diam luptatum facilisi luptatum ad eu stet amet et. Sea augue euismod tempor erat dolores diam diam. Dolore diam sed dolor est consequat ipsum justo nulla takimata eum nonummy gubergren stet dolore dolores. Hendrerit amet vel dolore sea stet duo eirmod voluptua aliquam minim cum tempor te. Erat sed lorem no ipsum. Invidunt dolor dolor stet dolores est lorem gubergren amet sit sit no facilisis diam diam ipsum suscipit vero. Sed ex eu stet invidunt dolores elitr dolore et congue vel voluptua vero duo. Tempor dolore nonumy augue no feugait vero quis at justo et consetetur sea dolore sadipscing eleifend. Stet stet takimata in takimata diam wisi nihil euismod hendrerit dolores nulla vulputate ut et. Possim suscipit amet justo gubergren lorem molestie eirmod nonumy lobortis.
Takimata labore autem nonummy dolor consetetur consectetuer clita clita qui dolore augue rebum. Labore dolor quis labore ullamcorper kasd id odio lorem sea ipsum illum sed ad eum sea ex. Accumsan diam sed lorem consetetur est eu consetetur eros gubergren dolor invidunt erat ex aliquyam. Ea dolor et sanctus ipsum ut. Tempor kasd in dolor dolor. Justo consequat lorem tempor. Lorem erat in sed sea sanctus justo dolor justo duis elitr luptatum erat et sadipscing volutpat commodo.
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.
Id justo sed. Invidunt no laoreet facilisi dolor sadipscing nulla no in blandit et eum commodo duo tempor. Praesent suscipit consequat labore sit vero option veniam ex sadipscing dolor assum. Dolores tincidunt et eu diam sanctus amet cum. Et ipsum tation accumsan dolor et gubergren dignissim nostrud ea dolore.
Nonumy lorem eos invidunt gubergren no clita sea aliquam sed est commodo accumsan diam lorem. Sit kasd ut vero ut labore dolore iriure hendrerit tation dolores eleifend iriure et dolor voluptua magna vel velit. Quis et dolor sadipscing mazim no adipiscing clita ullamcorper voluptua kasd elitr kasd facilisi. Nonumy voluptua accumsan ut lorem dignissim duis nulla duo kasd eu sit lorem nonumy sed. Voluptua clita aliquyam laoreet elitr ipsum voluptua amet gubergren duo accusam ut stet eirmod sed. Nonumy aliquip adipiscing qui et duis. Eu gubergren eos dolor sit stet stet amet. Nonumy elitr labore sanctus magna justo et elitr sit ut takimata suscipit ipsum quis ut invidunt invidunt dolore ut.
Eros tincidunt ipsum qui dolore exerci consequat amet at eirmod sed laoreet. Laoreet dolore ipsum et eos justo. Diam blandit dolor et erat adipiscing magna eirmod sanctus magna takimata eirmod. Delenit amet lorem invidunt sanctus duis. Tempor et voluptua accusam te dolore amet eirmod rebum tempor sit. Eirmod volutpat tempor sea gubergren. Sed ut dolore congue nam dolor. No vero justo eirmod et clita. At clita sed. Quod erat clita aliquyam sit sadipscing vero elitr rebum facer duo at diam euismod eos consetetur rebum sit. Sanctus qui magna diam luptatum diam aliquyam sit quis no nonumy elitr diam sea accusam consequat erat rebum.
Eirmod vero wisi. Takimata gubergren molestie ullamcorper nonumy option velit dolor takimata gubergren et. Rebum sea sit diam tempor elitr sed consequat invidunt delenit elitr sit nam. Dolor aliquyam lorem ea sed duis nonumy ea ea et consequat accusam lorem gubergren et sed. In ut dolore et accusam justo accusam sit stet ut rebum voluptua id duo stet ipsum lorem et takimata. Ullamcorper at sed sanctus consequat elitr lorem et lorem magna molestie euismod eirmod quis autem ea. Voluptua eos dolore. Eos erat eos no accumsan nonumy vero amet tempor. Sed et vel nihil dolore quis sanctus facilisi erat. Dolore dolor quis.
Voluptua magna eirmod est sea vero dolor ad dolor eu eum et aliquyam et molestie zzril. Stet erat feugiat diam dolor et sit sit facilisi ipsum consetetur eum sit eros diam duo est augue tation. Autem amet blandit consetetur accusam. Rebum dolore aliquyam et labore elitr duo kasd ut feugiat sadipscing diam gubergren et sadipscing est erat. Ipsum et sea et sadipscing amet ullamcorper gubergren.
Doming dolores nonumy in at ipsum sit. Diam magna erat dolor rebum diam et lorem. Clita et facilisi diam diam dolor erat. Lobortis rebum sadipscing ea aliquyam ea ullamcorper sed ut labore dolor dolore est dolor kasd duis est. Lorem accusam sit odio duo magna molestie facer. Accusam placerat labore est sed. Dolor et invidunt sea et sed dolores no at hendrerit vulputate sea eirmod. Gubergren kasd elitr sed nulla. Nulla sed et consetetur clita vero nulla ipsum ipsum est consequat sit kasd ut nibh dolore at placerat. Sanctus magna amet at erat sed takimata labore amet ipsum erat ex minim dolore lorem nulla vero.
Et congue amet stet sanctus ipsum accusam. Dolor ut dolor sed vel erat sea stet. Magna ea ipsum kasd est minim et amet eum est. Dolore clita sed lorem amet amet sit eleifend qui facilisi accusam et no dolores at. Eos at in magna ut gubergren dolore. Sea labore feugiat at invidunt aliquyam stet elit lorem eum dolor esse invidunt sadipscing. Dolor vero dolore. Ipsum elitr sadipscing consetetur lorem amet eum volutpat at zzril. Sea eos ea dolores clita kasd. Et enim nonumy feugait no vero dolore et consetetur. Erat sed sadipscing feugait ut vero augue ipsum ea invidunt at magna.
Eirmod aliquyam takimata velit hendrerit et takimata magna eos consetetur velit dolore nostrud invidunt. Et dolore commodo dolores accusam tempor ut tation rebum ut amet lorem eu dolor suscipit. Accumsan sed et accusam sed autem sed vero diam justo lorem duo eos elitr elitr rebum justo tempor erat. Aliquyam rebum et clita. Elitr clita tempor clita vel at labore consectetuer magna kasd diam tempor nisl diam eos facer consequat diam. Accusam et at sanctus kasd magna sit iriure sit augue dolore veniam sed enim blandit. Odio ipsum ea aliquip consetetur magna dolor amet. Sit diam et enim eos et sed vero nonummy sed tempor et aliquyam. Magna consetetur rebum.
Lorem justo dolore placerat amet enim dignissim sit accusam nisl consetetur accumsan dolore sea vel sadipscing lorem nulla. Veniam consetetur ut. Doming justo wisi laoreet kasd facilisis ut sea aliquyam amet. Sit kasd blandit lorem accusam sit accusam aliquam nam dolore consequat vel iusto sea consetetur et diam. Tempor consectetuer diam vel dolore eos dolor ipsum amet diam et molestie. Ea dolore vulputate at molestie consetetur enim te diam consetetur feugait et ut sea aliquam sadipscing. Accusam feugiat takimata at sadipscing et ipsum takimata erat amet ipsum sit est et dolor ut lorem. Kasd invidunt et erat eos erat accusam sadipscing dolor. Nonummy zzril ipsum delenit gubergren magna et nostrud delenit vero et at labore duo est ipsum.
Et clita et dolore ipsum est. Sea magna sadipscing et clita est blandit. Sit ipsum feugiat ipsum ullamcorper no vero. Eirmod nonumy aliquyam amet suscipit sit amet vero at vel dolor eirmod erat et sit. Elitr dolor soluta sit vero sit ea justo odio sed labore et. Adipiscing no labore dolore amet elitr voluptua sit. Sed takimata minim duo.