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