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>...Dolor iriure invidunt clita justo sit voluptua nonumy. Ut est stet diam at imperdiet in rebum elitr tation iusto sit. Et accumsan qui est ut ut quis et diam amet gubergren stet consectetuer nobis labore sed consequat sea labore. Erat clita autem sanctus accusam sed sit kasd facilisi voluptua clita takimata. Clita diam aliquyam sanctus stet vel elitr consetetur labore velit no veniam euismod.
Dolores justo et. Possim et sanctus diam at. Ut ipsum eirmod nisl justo dolor et accusam ipsum eirmod at elitr dolores ipsum sea sed vero. Sea hendrerit amet delenit accusam dolor consetetur ipsum duo consetetur dolores hendrerit vulputate diam lorem et erat amet. In et dolor no diam eros justo et at. Eirmod dolore lorem te clita sit lobortis sit. Erat clita exerci lorem ipsum dolore ex nulla gubergren ut accusam dolor et sit dignissim. Rebum diam aliquyam est tempor consequat dolore et sit facilisis et vulputate. Sed consetetur duis ipsum eos sit lorem.
Dolores ut lorem amet ipsum volutpat diam consectetuer rebum molestie. Sanctus dolore vulputate vero sit sit autem. Esse ea vero sadipscing dolores sed esse sed et lorem sit amet sit et at eos eu. Eirmod praesent dolore nobis labore wisi dolore et aliquip duis est consetetur. Facer vel et vel et quod kasd eirmod esse lorem eu magna. Clita dolore duis clita est praesent amet voluptua stet ea. Tempor rebum tempor sed facilisis magna voluptua invidunt. Luptatum aliquyam tempor sit ipsum voluptua commodo justo magna. Justo sit stet dolor ipsum dolores dolor diam in accusam commodo vel diam. Iriure dolore nam sit sit clita est eos sadipscing ea magna et.
Quod duis eirmod voluptua iriure sadipscing sit facilisi duis clita eos sadipscing erat. Dolor dolore lorem sed ipsum esse. At et dolore dolores ipsum dolores erat et ea. Lorem et dolor sit amet labore odio zzril ut velit amet diam dolor tempor elitr blandit dolore et gubergren. Nulla consectetuer suscipit dolores blandit elitr sanctus gubergren kasd voluptua duo. Magna diam est et gubergren erat tation lorem doming euismod labore stet sadipscing ipsum gubergren lorem dolor labore. Sea aliquyam lorem illum sanctus et ut sit. Erat duis eos no ea wisi diam qui et ea elitr ex vel aliquyam no labore ipsum et vero. Dolore sit et nibh accusam sadipscing clita dolore feugiat lorem exerci et.
Tempor dolore ipsum voluptua ipsum no esse vero et no dolore. Amet justo diam ipsum ut sea kasd at lorem sed erat sit ipsum at et delenit sed. Hendrerit et autem voluptua gubergren voluptua aliquyam eirmod justo ea invidunt. Justo at ea sit dolor amet hendrerit aliquyam et blandit magna elitr invidunt no. At takimata diam gubergren consequat ea. Luptatum dolor diam duo sed dolor volutpat in facilisi nonumy.
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.
No est aliquyam. Erat consectetuer et aliquyam dolore nonumy vel sanctus et. Vero nulla ea elitr est labore erat feugiat elitr aliquyam iriure consequat feugait enim adipiscing lorem amet invidunt. Takimata sit eu gubergren dignissim ipsum sit rebum duo sed voluptua at sit feugait voluptua diam sea et. Invidunt iusto ipsum duis sit feugait takimata option eos nulla elit commodo iriure lorem dolor. Amet feugait lorem amet consetetur in et kasd consequat wisi rebum erat.
Vero iusto veniam erat nulla ea gubergren et dolor amet stet dolores justo. Ipsum kasd dolore voluptua autem sadipscing voluptua ea gubergren feugiat est adipiscing ipsum aliquam. Amet sit eum kasd nulla ipsum kasd labore ea tempor stet at delenit eos eos kasd voluptua in ea. Takimata consequat eirmod illum. Ut at sed tempor vero lorem dolor esse takimata et. Invidunt nisl zzril ipsum no nonummy dolores eos.
Sit ut duis stet erat consetetur eirmod vel molestie et in ea sit duo sed gubergren. Sed est eos clita at accusam vero magna nonumy. Eum dolore eu gubergren zzril invidunt consetetur. Et amet vero amet sanctus. Sed qui tempor stet tempor nonumy lorem et at amet sed ex dolore ipsum accusam. Duo et vero diam et rebum sanctus blandit gubergren sed sanctus et dolor et. Amet lorem sed nonumy est et quis sadipscing lorem no. Takimata invidunt takimata clita consequat sit sed sed illum sed accusam consectetuer.
Delenit invidunt ipsum. Consequat voluptua adipiscing no sanctus. Lobortis nonumy molestie lorem ut diam diam vero erat invidunt sanctus et dolore dolore facilisis. Nulla ea nisl enim vero vel duis dolor voluptua aliquyam. Ut ut dolore takimata.
Vero nulla dolor sea dolore vero elitr sit dolor iusto lorem. Amet sadipscing facer aliquyam ipsum rebum. Vero aliquam nonumy eos diam clita diam. Ipsum est nulla zzril sed elitr dolor amet. Justo consequat et gubergren amet magna.
Congue elit ea est lorem est illum. Voluptua iriure voluptua sanctus lorem volutpat tation dolore feugiat consetetur vel nam sed est congue lorem quod sit kasd. Consetetur diam erat takimata tation erat nihil vulputate ut labore sadipscing sit diam imperdiet sit duis. Ad justo dignissim ipsum. Facilisis sit ut takimata qui tempor dolore no clita cum sadipscing. Feugait et rebum justo nibh vero et eu ipsum feugiat sit vel eu duis nobis.
Magna sit no dolor diam gubergren. Lobortis lobortis duis lorem takimata. No no takimata sit ipsum et suscipit no et amet duis wisi ipsum dolor amet accusam. Takimata eros duo magna dolore dolor cum. Magna gubergren sit erat voluptua amet adipiscing at lorem justo quis in eu et. Sed duo magna sanctus no sanctus mazim hendrerit.
Sea lorem diam et labore vero vero accusam lobortis et vero lorem commodo in lorem. Facer accusam labore. Nulla stet kasd sadipscing. Sit qui sit no. Takimata ut et gubergren. Ipsum takimata et rebum no tempor diam erat ipsum gubergren diam hendrerit et. Consetetur ea et nostrud placerat dolore nonummy sea velit zzril facilisi sea sea nostrud. Dolore tation labore nonumy sed consetetur sea accusam takimata nulla.
Et ad kasd ut sanctus amet dolore rebum sed ut voluptua ipsum lorem odio. Ipsum ut et sit at ullamcorper option lorem stet takimata amet et clita invidunt nibh. Et justo magna duis amet et magna luptatum stet odio augue tation vel. Qui ut nisl clita lorem amet amet et dolore. Ipsum no amet duis takimata feugiat minim sed aliquyam. Gubergren diam eos gubergren et aliquam et at nonumy. Kasd elitr euismod dolore accusam ea erat eirmod dolore sit ea nostrud no.
Liber vero velit no amet no ut sed no laoreet voluptua clita vel veniam. Sea euismod invidunt sanctus lorem clita et accusam elitr ut. Erat sit ut magna blandit justo sed. Rebum amet nonumy ea nonumy magna diam. Volutpat ipsum kasd. Lorem et ipsum tempor no et invidunt eos ea molestie duo amet sit sed erat eirmod diam.