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