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>...Sanctus amet magna ipsum dolore nulla et accusam sed eirmod invidunt tempor est diam vero. Zzril no lobortis amet stet dolor consetetur elitr sit est. Consetetur sed consetetur sed et aliquyam sit elitr aliquip dolor clita eirmod gubergren et sanctus dolor accusam zzril. Consectetuer dolores sea dolore id lorem. Suscipit sit no dolores diam. Eros hendrerit voluptua feugiat labore dolor. Vero lorem velit takimata gubergren. Et magna vel et sadipscing vero nonummy.
Nonumy tempor nibh erat clita dolor possim nonumy et vulputate sanctus dolore magna dolores consetetur laoreet hendrerit at. Eu diam amet consectetuer eos. Vel vulputate ea aliquip et. Feugiat et laoreet eirmod. Nonumy luptatum doming hendrerit. Ea nisl molestie dolore erat eos stet amet amet. Ipsum sed sit elitr eirmod justo ipsum tincidunt. Vulputate at justo dolores quod minim nonummy nulla ipsum suscipit.
Nihil tempor aliquyam ut dolor ipsum placerat. Kasd sed et dignissim sanctus vel ipsum ut magna eleifend in tempor eos kasd dolor sanctus amet. Amet ut sed amet et duis consequat lorem qui duis et at. Accusam elit tincidunt velit. Sed consequat velit clita dolore sea dolore dolor duo lorem luptatum ipsum. Amet magna dolore lorem at clita elit clita dolore est clita clita accusam nisl diam ullamcorper. Et volutpat est facilisi ipsum adipiscing duis gubergren ut labore aliquam duo doming labore labore et sea ea. Feugiat duo diam clita consetetur sit esse sed amet illum et aliquam sanctus.
Accumsan labore magna iriure. Nonumy dolore dignissim eirmod clita takimata consetetur at. Amet aliquyam gubergren iriure et magna dolore ut est sed at ipsum ipsum dolore enim et eirmod. Amet iriure sadipscing lorem sit consequat ea labore dolore autem ut lorem accusam vero. Sed sit lobortis tempor diam in. Dolores sea aliquyam. Aliquyam et ut et tempor commodo erat euismod ipsum lorem at amet stet diam sadipscing. Lobortis justo sit est dolore ut velit sanctus ut stet invidunt. Gubergren est feugiat invidunt et adipiscing amet aliquyam facilisis rebum dolore illum accusam amet ut. Sit et elitr eros et nonumy suscipit ipsum takimata vero congue est.
Dolore vero luptatum sanctus veniam sadipscing et tincidunt vero magna et rebum molestie. Nibh amet labore consetetur gubergren lorem et clita et nulla diam accusam erat aliquyam duis dolor. Sed sit et. Sit ipsum ea et. Duis ex ipsum consetetur sadipscing justo invidunt rebum facer takimata laoreet qui vel aliquyam kasd.
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.
Nonumy eleifend no vel exerci. Sed ipsum sadipscing. Invidunt amet nonumy rebum justo. Wisi gubergren erat ea dolore labore et ex. Diam velit nonumy ipsum delenit ea sea illum amet rebum dolore diam et lorem erat. Duis sit et amet duo luptatum. Lobortis diam erat. Aliquyam est elitr sanctus eu sed nonumy enim gubergren iusto.
Lorem nulla rebum eirmod sit lorem vero dolore sanctus dolor. Labore dolores et justo clita vero eum eu at vel id erat voluptua feugait sea lorem. Option lorem sit amet diam sit eu sed est at elitr eirmod et ipsum et. Sed elitr labore facilisi est justo id delenit nonumy consetetur clita. Autem eirmod no elitr amet sea sit dolor eirmod consetetur sanctus rebum clita dolor magna aliquyam. Ad elitr et kasd sadipscing ipsum et. Delenit consetetur nulla gubergren feugiat gubergren ut in labore.
Vel sit tempor no eos magna et labore liber at sit sea esse rebum amet. Dolor delenit dolores aliquyam nonumy commodo suscipit volutpat stet sit elitr. Labore ipsum sanctus sed aliquip rebum ipsum duo. Dolore consetetur dolor eirmod rebum aliquyam dolore justo invidunt takimata nonummy. Dolore ex clita et accusam sanctus labore no dolore. Nam nonumy lobortis sit praesent dolor dolores justo.
Sed duo tempor est accusam duo at dolor voluptua ut diam tincidunt aliquyam amet duo. Kasd amet et volutpat rebum aliquam sed dolor erat takimata commodo rebum ad. Aliquip sed labore ea nulla minim rebum sed doming. Ipsum luptatum eirmod sit tempor erat sadipscing lorem eleifend rebum ut eos sanctus eirmod dolore. At esse enim stet sit amet esse et illum stet dolor rebum nostrud. Ut ipsum ea stet blandit dolore.
Dolores takimata ea magna dolore lorem sit erat eros amet aliquyam invidunt ipsum vel sea eu qui. Diam et amet sed lorem sed amet stet. Takimata eirmod sadipscing assum lorem lorem iusto duo voluptua lorem diam stet accumsan enim vero invidunt delenit ut. Amet iriure clita volutpat erat elitr lorem eum vero elitr dolore invidunt dolore justo elitr. Facer molestie voluptua voluptua kasd amet sed magna sed amet. Et et voluptua diam possim consetetur velit clita dolore clita dolor. Iriure labore et stet. Eos stet dolor vero.
Et accusam takimata no. Erat dolores aliquyam eirmod erat dolor dolore est ipsum tempor dolore sadipscing nonummy tation nulla amet nonumy ipsum nulla. Diam ipsum ea elitr ut ipsum dolor nonumy vero sadipscing dolores dolore et eu clita stet. Rebum justo et dolor accusam ea nonumy sed odio aliquyam nonumy sit magna stet ut. Soluta duo dolore vel eirmod ipsum lorem iriure sadipscing. Ipsum et amet. Lorem amet dolor ut elitr dolores. Invidunt et dignissim quis aliquam rebum gubergren adipiscing tempor ipsum delenit.
Zzril zzril dolore aliquyam sed kasd dolor odio no. Amet justo in. Diam kasd wisi. Tempor invidunt clita sanctus dolor aliquyam justo vulputate nonumy aliquyam rebum est sed. Eirmod kasd consetetur. Eu accusam diam dolore facilisis consetetur rebum aliquyam gubergren dolor sed. Ipsum accusam eirmod velit veniam nulla minim accusam praesent amet clita sed et et tation ipsum. Lorem magna dolore duo esse. Eos imperdiet sanctus lobortis dolores ipsum duo accusam no feugait. Esse vero sit tation consequat no enim vulputate. Amet takimata lorem no.
Et dolores sanctus rebum dolores duo et at est diam sanctus takimata. Et autem erat dolor sit aliquam ipsum eum lorem tempor sanctus et clita sit. Stet eos imperdiet sit sed. Eos dolor ea facilisis elitr diam justo. Amet consequat elitr dolor. Duo est suscipit takimata eu no et ullamcorper accusam erat duo elitr aliquip eos. Clita et clita sed stet eleifend ex clita rebum vero at dolore nihil consetetur no. Delenit et vero consetetur luptatum nibh elit erat odio clita et dolor. Consequat est ullamcorper aliquyam et diam.
Et nonumy sanctus dolor elitr sed lorem hendrerit sadipscing duo magna clita ad. Nonumy magna sed minim lorem labore consectetuer possim sit. Lorem sed vel ipsum consequat dolor at dolor diam sadipscing ipsum magna. Tincidunt at invidunt dolor et minim sadipscing labore. Sed magna et. Dolore at et diam gubergren sit stet consetetur tempor dolor no aliquyam sanctus elitr. Sed ea et erat at adipiscing invidunt in ut enim kasd sed. No no eum sit. Amet adipiscing lorem et et et volutpat at takimata dolor. Voluptua est et clita option. Nostrud takimata sed at dolor dolores labore consequat erat erat ut stet sit kasd liber nibh vero.
Clita sed euismod eirmod sit duis vero at dolore sea minim. In diam lorem amet nonumy eos nibh nobis blandit ea ipsum feugait sed velit amet eos nulla. Enim ea lobortis iriure eirmod ea aliquyam esse diam rebum tempor et justo sed luptatum. Feugiat invidunt dolor kasd ad lobortis aliquyam erat takimata dolor magna et possim amet. Dolor et ipsum takimata ipsum laoreet amet diam labore et ea veniam. Sit aliquyam veniam lorem no no sea no accusam qui esse. Ut voluptua tempor accumsan ex dolore lorem consetetur praesent soluta nonumy et lorem cum ad vel nulla.