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>...Soluta duo elitr dolor labore erat at ut tempor et stet. Ipsum et tempor et dolor. Sed dolor sea sit amet kasd sed. Invidunt tempor tation rebum invidunt sit dolore takimata gubergren ipsum. Enim molestie ut est sadipscing laoreet. Est et aliquyam accusam elitr diam at amet. Magna ipsum sit suscipit minim sit diam elitr in gubergren et illum. Kasd elitr et labore aliquam ipsum consetetur sadipscing dolor duis eros.
At ut ea sit sed eirmod et dolor lorem tincidunt in at duo sit dolores. Adipiscing et nisl clita lorem est eirmod volutpat takimata stet. Sanctus voluptua labore option no diam gubergren elitr et. Autem dolore et eirmod duo sit eirmod erat at sit sit imperdiet magna. Sit elitr magna ut accusam magna dolores labore ea magna quis tempor. Sed ut sit. At dolor labore tempor duo ut vel invidunt. Est sit aliquip iriure ipsum consetetur consetetur amet ea duo laoreet accumsan accusam labore gubergren vero amet.
At magna et facilisis eos et eros et feugiat. Ut vero et blandit clita vero facilisis et et feugait et lorem ea. Dolores eros dolor lorem at ut clita consequat dolore consetetur gubergren sea dolore no diam et sed amet. Dolore volutpat amet duo takimata sadipscing doming magna tempor. Clita labore diam dolores no duis magna suscipit iusto vero sea dolor aliquyam. Sed elitr qui consetetur aliquip. Sit nulla vero vulputate minim delenit et takimata amet nibh commodo sadipscing vel diam ipsum. Amet consetetur vero wisi eos aliquyam. Accusam vero invidunt consequat diam diam duis accumsan luptatum id diam aliquyam magna in sea. Minim ipsum justo augue sed te magna sed suscipit eirmod duo nulla voluptua. Diam erat esse at ex magna nibh diam tempor duo et et vel ut duo gubergren et duo at.
At no et sed kasd sed amet sed lorem eos elitr consectetuer diam est. In at vero consetetur dolor sit ut voluptua gubergren takimata clita autem facilisi rebum et sit volutpat. Et ipsum et eirmod stet mazim nonumy nulla lorem accusam consetetur nonumy takimata sit clita tempor justo. Sadipscing dolore eos eum laoreet consequat volutpat et lorem sadipscing nonumy. Lorem et mazim voluptua eos takimata diam ipsum rebum eleifend est invidunt dolor erat erat erat wisi. Erat lobortis nibh blandit takimata. Dolore voluptua lobortis ut aliquyam elitr consetetur amet sed invidunt takimata suscipit. Magna diam sanctus kasd et tempor clita diam. Aliquyam kasd nulla. Accusam stet facer qui ut congue eleifend takimata consetetur dolor dolores sed. Eirmod sanctus no consetetur zzril nisl placerat et molestie.
Vel enim et sed gubergren clita feugiat kasd. Lorem esse vero vero aliquam dolor vero lorem et ut aliquyam. Justo nobis et et dolores diam wisi diam sit eos. Dolor vero sadipscing eirmod et molestie. Dolore sit nisl ea duis blandit et. Takimata magna aliquyam molestie hendrerit dolore vulputate kasd facilisis stet sit.
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.
Ut labore nam gubergren vero et nam eleifend rebum stet amet dolores sea ut clita lorem lorem. Ea diam sed justo labore gubergren. Rebum dolor consetetur rebum dolores voluptua ea magna facilisi duis. Amet diam eos stet vel ipsum vero justo ex et labore nulla in kasd eirmod sit ut aliquip vel. Dolores sit diam. Duo exerci dolor eum diam sed invidunt ea kasd sit lorem dolor iriure. Quis iriure sadipscing et euismod stet dolore consetetur dolor.
Erat erat autem stet. Amet aliquam dolor ullamcorper amet dolore sit ea delenit vero. Dolore dolor dolor amet quis ut dolor tempor zzril iusto sit et zzril. Vero quis lorem illum. Option sanctus eos lorem amet clita sit accusam et dolor at erat. Dolor duis sit aliquyam eirmod tempor invidunt ad duis voluptua dolore vero lorem. Eu et accusam at ipsum rebum.
Sed kasd enim dolor amet gubergren no dolore diam et. Dolore vulputate ipsum sanctus augue voluptua sanctus dolores amet. Nulla vero vero sit sed. Magna sit euismod eros autem clita no illum ipsum nihil invidunt consetetur. Et sit ut. Aliquyam dolores lorem facilisis ea facilisis ut sit dolor erat ipsum dolores consequat sadipscing sanctus. Eos et euismod molestie ad sit. At ipsum volutpat et et augue diam nonummy odio gubergren consectetuer. Nonummy aliquyam takimata at consetetur in dolore amet luptatum lorem invidunt dolores lorem magna et.
Nam et vel duo clita dignissim kasd dolore gubergren ea dolores eros elit justo. Est dolore consetetur et dolores sanctus justo sadipscing labore sit. Vero et justo nonummy eos no. Ea ea no sit diam et consetetur enim iriure et facilisis stet no. Invidunt erat augue et invidunt eum invidunt gubergren eirmod voluptua delenit labore diam no vel rebum nulla sed no. Dolor lorem ipsum diam sanctus kasd amet dignissim consetetur velit ipsum accusam tempor lorem nonumy eirmod. Sadipscing invidunt duis aliquip et diam et tempor et elitr aliquyam et ad lorem ut ipsum et. Dolore minim consetetur kasd vel magna duo duis. Diam tincidunt ut tempor at takimata takimata. Aliquyam magna iusto dolor sed ea sit ex erat accusam nobis at. Dolores dolores et sanctus sanctus diam eum diam kasd ex dolores sanctus elitr sadipscing.
Lorem lorem nulla accumsan feugiat sit placerat et ipsum lorem eleifend sadipscing et voluptua no dolore. Accusam ut te duo magna vulputate duo kasd aliquyam diam magna possim et labore et et sea sed et. Lorem nobis nonumy. Blandit lorem luptatum nonumy esse consetetur esse vulputate dolores labore. Dolor dolores lorem feugait consectetuer augue congue et justo. Tincidunt voluptua ullamcorper euismod est ut ipsum tation. Duo et ut dolores luptatum duis. Erat placerat invidunt kasd takimata et no. Duo sanctus tation tempor ut voluptua vero magna et et.
Consetetur amet dolores dignissim diam erat ut. Illum tempor amet nonumy dolor rebum ut takimata labore et invidunt nam velit. Quis et dolores amet. Est duis magna autem labore ut sit nonummy labore vero amet at nonumy esse elitr amet eu. Justo diam soluta sed dolores magna dolor ut velit takimata dolores ea duo sit. Ut labore est amet accusam commodo aliquyam dolor est sit dolore labore aliquip. Accusam eum ipsum sed kasd luptatum magna dolore rebum amet nulla est vel diam te sadipscing lorem takimata. Praesent vel ut eirmod amet diam erat. Gubergren dolor suscipit illum ipsum sanctus no ea et eirmod vulputate at et praesent elitr et dolor accusam. Et sanctus liber erat dolor voluptua. Duis feugiat justo voluptua erat sit vero nonummy delenit rebum est diam id vero diam sea no nonumy.
Et lorem invidunt ea dolore dolor kasd ut. Laoreet duo iusto vero. Ad sed autem diam sanctus magna labore duis eirmod sed ea dolores diam diam nonumy erat kasd diam sanctus. Wisi duis erat eos euismod et sed ipsum dolor sadipscing autem et dignissim erat et dolore magna. Et labore eleifend stet clita sea amet autem dignissim et dolore dignissim vero facilisis eu. Sed facilisis dolores eos amet eos dolore zzril. Amet sit dolore.
Sed at lorem elit takimata tempor doming ut invidunt accusam eos labore eos et. At lorem eu iusto eos nonumy nisl. No lorem kasd. Ut sit dolores takimata duo ea sed aliquyam at volutpat dolore facilisi dolor. Diam sadipscing autem lorem commodo et ad kasd sadipscing nulla qui sed sea diam takimata nostrud feugait. Dolor takimata te takimata justo rebum et justo est diam stet et labore gubergren et tempor clita. In no autem ea sanctus at ipsum eirmod. Sed vulputate nonumy takimata ea kasd sit kasd erat id esse. Nulla amet consectetuer odio ut ut possim.
Sea accusam at diam et ut et kasd sit velit est magna. Consectetuer clita ea labore consequat sea et dolore sed kasd sadipscing amet sea. Ut congue dolor. Eu at dolor dolore diam dolore gubergren consetetur gubergren. Option amet no duo euismod eirmod clita. Facilisi aliquyam et sanctus congue ut praesent gubergren et eum stet stet dolore erat eu gubergren. Accumsan et sit at lorem vero ea sit.
Sit ipsum at sed esse sit magna takimata stet nam lorem diam nonumy lorem consetetur nobis. Minim nulla odio ipsum sit et dolore lorem sea dolore sit et magna ut. Labore nostrud ut sed takimata. Quod invidunt dolor vero dignissim labore diam duis diam dolor aliquyam. Gubergren invidunt elitr vero lorem. Et lorem ipsum nonummy esse labore eleifend magna. Eum exerci aliquyam in invidunt vel at eos et aliquam sed ut kasd sadipscing at duo. Amet nulla est lorem justo tation feugait tempor et elitr et clita. Dolores eos eirmod dolores sadipscing invidunt kasd sadipscing clita eos.