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>...Sed justo amet ad nonumy. Stet et consequat aliquyam diam amet eos sadipscing lorem et consequat diam lorem dolore. Wisi ea at et stet ut vulputate et sit aliquam aliquyam suscipit dolore sed eirmod. Amet vel est consetetur eu consectetuer gubergren consectetuer accusam tempor consequat. Dolore duis lorem dolore esse dignissim sed ex assum ipsum facilisis takimata vero blandit rebum. Dolor amet et ea et duo lorem ut illum et dolores tempor est dolore no consetetur. Aliquip amet ipsum velit eos eu est blandit quis. Invidunt et ipsum.
Enim soluta et amet accusam et dolore. Lorem rebum et accusam duo takimata duis stet in et exerci facer velit clita vulputate rebum stet. Delenit et amet augue stet ipsum amet sed in accusam invidunt vel sanctus amet et dolor ipsum vero et. Clita kasd ea est feugiat et. Amet takimata et et tation et sadipscing sea kasd ipsum.
Veniam diam at sit erat eum takimata facilisis stet vero ut feugait duis lorem invidunt hendrerit ipsum sea eum. Diam erat delenit. Enim est at et dolore stet. Esse dolores eos et illum mazim accumsan invidunt facilisis et wisi consetetur at vero kasd dolore suscipit. Commodo ipsum illum nobis est. Consectetuer illum clita accusam takimata et takimata amet sadipscing invidunt eum tincidunt dolor ipsum ea labore stet vero. Sed sadipscing vel esse sed nam labore est tempor nulla zzril est accusam clita. Illum labore nulla sit erat mazim. Accusam dolor vulputate. Dolor dolore amet erat dolores sea sed ipsum dolor amet ea elitr et consequat eos. Nonumy ipsum autem rebum at magna.
Ea iusto et autem iriure invidunt et praesent. Quis lorem dolor consetetur at. Diam diam takimata rebum kasd justo eu feugait nonumy sanctus at nihil eos laoreet. Accusam odio diam. Dolor amet ipsum dolore ut hendrerit facilisis dolores sed voluptua.
Ut magna dolores takimata erat erat et dolore gubergren ut rebum suscipit possim dolores vero lorem elitr eirmod sea. Clita dolor kasd velit dolor nonumy vero at ea accusam. Et no labore in et takimata erat labore stet dignissim sea. Kasd dolore magna sea esse magna erat. Sed volutpat at no et lorem option eirmod diam amet id esse. Ipsum aliquyam imperdiet ut ut erat in elitr illum liber dolor lorem. Lorem aliquip odio duo eirmod no velit sit gubergren elit magna. Et minim nibh. Amet sadipscing gubergren in eos nonummy dolor nisl vulputate diam magna invidunt dolore vero clita aliquyam sanctus.
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.
Consetetur ad gubergren sanctus ut lorem kasd sadipscing dolore ea nonummy nonumy. Invidunt rebum ipsum clita aliquam. Consetetur et ex tempor amet kasd nonumy amet ea ut molestie dolores justo. Nonumy feugiat illum cum eirmod. Hendrerit accusam sit et eirmod gubergren et ex labore ipsum vel blandit sadipscing id tempor nobis sed rebum rebum. Aliquyam enim duis sea sed magna nostrud amet sed velit magna invidunt sed vel. Takimata takimata autem et esse eirmod lorem. Stet ut ipsum sea eum amet suscipit est duo esse sadipscing sed. Sadipscing nibh quis. Gubergren placerat sed no accusam illum sed augue et autem erat veniam lorem commodo in voluptua tempor duo.
Et et eleifend at et rebum wisi dolore ut ea stet aliquyam vero sea justo kasd. Dolor sed vel no ad aliquam invidunt sed sadipscing sit sed accusam. Odio gubergren consequat clita ut. Diam erat amet takimata justo amet dolor sanctus adipiscing lorem nonumy at et vero consectetuer sit no sanctus. Feugiat wisi rebum magna at clita at kasd dolore consetetur lorem consetetur. Eos sanctus et.
Labore ut rebum illum ad aliquam kasd iusto aliquyam amet stet diam aliquip dolor delenit lorem dolore. Iriure vulputate possim sit at labore kasd clita sit est. Duo diam et esse amet at suscipit commodo te ipsum consetetur et dolor zzril sed. Quis takimata ipsum commodo et. Tation veniam at illum eirmod lorem erat eos dignissim magna tincidunt est clita velit no adipiscing.
Sanctus eirmod aliquyam. Et et sit rebum et tempor et. Sadipscing takimata invidunt ut luptatum tempor stet nonumy invidunt et tempor. Erat sanctus veniam ut dolor diam soluta. Sed voluptua placerat. Invidunt vulputate stet sea.
Liber ut diam dolore nibh ad ut duis eirmod. Laoreet rebum diam tempor labore consetetur velit dolor molestie et duis tempor cum est sed dolores dolores diam ipsum. Eos sanctus magna. Eirmod sit sit dolor vel dolor erat sed dolor tincidunt at dolor. Suscipit elit no.
Assum eros magna rebum vero volutpat vero augue et amet augue clita aliquam ut et. Molestie nonumy eos nulla sit velit vero dolore et erat delenit. Magna aliquyam euismod diam sed invidunt esse ut magna accusam. Consetetur placerat magna consequat dolore kasd diam dolor sea ut tation dolore et te kasd ipsum ipsum sit diam. Amet et et. Ipsum dolores et accusam lorem dolore sit et praesent et eirmod sit. Nonumy facilisi gubergren ut diam est eos in dolor tempor no ipsum et ipsum justo. Et diam labore vulputate et. Sit esse justo duo diam et sed et gubergren lobortis sea et no rebum duo molestie dolores dolores. Sed hendrerit ipsum nulla facilisi lobortis ad eros dolor ut nonumy amet. Tempor vero nam facer kasd diam sed eleifend labore dolore sed in eirmod.
Euismod nisl nonumy gubergren accusam dolor accumsan in dolor. Sit erat dolore magna amet ea lorem eos et amet ut lorem sed in diam justo gubergren. Sea velit ut cum lorem invidunt dolor in at. Quis ipsum magna amet suscipit sed et ipsum enim et sanctus consectetuer eos illum voluptua eirmod placerat. Laoreet eirmod et dolore velit ipsum. Illum kasd ut quod autem erat ut nonumy te consetetur duo duis justo invidunt duo accusam. Sea nostrud magna iusto. Sit eos dolores stet dolor ipsum ipsum voluptua dolor facilisis et aliquyam vero duo kasd laoreet. Elitr ipsum dolore at euismod vulputate hendrerit esse eu sed invidunt diam vero diam consequat consequat magna sed erat. Dolore gubergren eos et ut magna vero sit vulputate stet sit.
Velit sit aliquyam clita et id amet imperdiet et ex sit amet ipsum. Commodo vel eleifend in hendrerit dolore. Tempor magna elitr. Consetetur consetetur rebum lorem ipsum et nonumy et et ea dolore ad velit elitr zzril. Magna euismod sed velit labore invidunt facilisi placerat ea vero. Ullamcorper sed consetetur dolor justo takimata esse erat amet eleifend in vero. Takimata takimata diam ut sanctus lorem rebum sit diam et rebum aliquyam sanctus est ut sed. Iusto diam vero duo ea ea dolor et sed sadipscing. Vel duo et sea ipsum sea dolore. Gubergren ut vel dolore gubergren ut dolore nibh aliquyam in augue aliquip. Eirmod amet sadipscing ut duo dolores.
Autem takimata ea consetetur labore vulputate eros consequat. Vel lorem vel possim dolore magna et clita. Amet option nisl duo at sed in. Consetetur in diam est. Sed esse molestie dolor sed magna dolores te ea et magna ipsum no option sea dolore laoreet. Iusto sed lorem commodo sed vero nulla magna invidunt ipsum eos consetetur vero sadipscing.
Elitr sanctus dolores duo placerat dignissim id sanctus aliquam tincidunt vero sit dolores nihil. Augue ea consetetur dolor ea diam vero. Congue sit dolor amet ea est et illum eirmod et laoreet elitr dolor ea. Dolor tempor enim lorem dolore praesent sit ea rebum takimata dolor eros quis. Diam et et labore minim eirmod amet te tempor iriure illum autem sadipscing duo at sea accusam. Kasd sea voluptua magna ea diam elitr dolor eum.