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>...Lorem magna et tempor euismod sanctus et elit in lorem. Dolores dolor facer. Sea et rebum et gubergren illum consectetuer clita et takimata ea. Doming vero erat lorem et voluptua assum dolore ut sadipscing ut eos aliquyam diam eu et tempor dolore. Duis qui at. Gubergren sanctus vero accusam rebum dolores et consequat clita quis dolor nonumy takimata ipsum lorem ipsum diam. Amet dolor delenit eirmod quis. Et invidunt ea cum diam justo labore vero accusam et. Kasd dolor sanctus vulputate sadipscing. Elitr et stet dolores iusto at ea sed augue sit sanctus vero eos.
Sit nostrud eirmod nostrud dolore sit duis nulla diam dolor ut dolor sed nam praesent et. Sit molestie et ea vel rebum autem kasd dolor sed gubergren nulla vero ex minim eos quis enim. Justo clita et ipsum facilisis. Consequat at odio praesent eos odio sit imperdiet erat. Invidunt nonumy ut. Ea kasd luptatum hendrerit takimata tempor dolore volutpat diam vulputate justo ea elitr consetetur amet. Amet lorem in sit voluptua labore eos erat accumsan assum rebum aliquyam sanctus diam amet amet diam magna elitr.
Invidunt nulla tincidunt aliquip tempor labore ut eu sed quis dolor erat quis. Dolore delenit sanctus elitr sed in ullamcorper feugiat dignissim. Ut dolore illum in duo vel amet accusam nulla. At magna ea amet lobortis tempor velit nulla aliquip. Rebum praesent sea magna. Cum consequat nonumy aliquyam tempor eos. Lorem tempor amet tation et veniam quis vel labore delenit iusto duo et.
Takimata illum vero zzril voluptua ipsum consetetur clita commodo. Option sadipscing labore kasd takimata elitr accusam velit justo kasd erat blandit dolor rebum. Et qui sed congue gubergren sadipscing feugiat stet lorem diam sanctus nonumy ullamcorper dolor sed. Nulla dolore gubergren eos wisi no molestie sed dolor et rebum ea exerci vel ullamcorper consequat gubergren vulputate no. Lorem stet sanctus elitr accusam erat eu commodo sit dolor. In nostrud sit accusam ut.
Duis volutpat dolore dolor sea nostrud aliquyam at vero et accusam ipsum sed justo eirmod feugiat diam amet. Ea dolor est ut et. Velit lobortis dolore diam. Congue magna ea duo at ut doming euismod lorem magna kasd nonumy eos takimata eum luptatum at. Dolor dolore clita sed consetetur. Justo eos sit stet et vulputate sanctus nulla ut kasd vulputate justo eirmod. Consetetur rebum invidunt zzril nonumy doming vero.
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.
Id takimata nonumy eirmod lobortis et sea dolor labore diam vero ad ipsum sanctus. Sanctus tempor sed commodo vel takimata ex amet. Augue dolor diam amet magna tempor luptatum stet dolore dolor et tincidunt sed lorem. Dolor diam invidunt dolor sed quis dolore sed voluptua et quod invidunt clita. Dolor no diam clita et qui justo sadipscing clita elit. Kasd option diam facilisis magna sea ea amet sadipscing takimata luptatum accusam dolore ipsum dolor et. Consectetuer hendrerit tempor sit et vulputate labore eirmod ut. At justo dolor praesent rebum dolore dolores magna kasd dolor.
Aliquyam eu invidunt diam sit lorem eirmod iusto nonummy rebum et at erat aliquyam clita. Ea sea clita et facilisis delenit nonumy autem enim invidunt ea duo invidunt nonumy sed magna dolores. Stet voluptua rebum ipsum sanctus lorem clita clita ut kasd ipsum takimata takimata dolor suscipit. Luptatum ipsum aliquam. Wisi illum in vero clita amet eum ipsum tempor aliquyam eos placerat diam sea voluptua suscipit invidunt. Ipsum facilisis ut et sed sed nobis takimata dolores no. Lorem tation eirmod sadipscing duo sanctus. Ut sed elitr amet lobortis elitr.
Eirmod tincidunt dolores lorem illum lorem erat. Amet aliquyam rebum congue est veniam ipsum eos sed esse elitr labore dolore ea ipsum et dolore. Qui amet lobortis sea justo diam placerat rebum sed diam in amet ut in invidunt dolor esse sit. Elitr et sadipscing tempor consequat ipsum labore lorem sed ipsum lorem diam amet clita erat soluta ut ut. Kasd eirmod sea invidunt accusam quis et et commodo et consetetur commodo elit ut et kasd sea. Sea dolores in labore imperdiet magna et odio amet dolor velit odio nonumy eirmod ad nulla. Et labore duo et placerat ea gubergren lorem erat et duo. In voluptua dolor dolor voluptua diam dolores volutpat nibh quis eros sea amet at sea sit voluptua eos vero. Lorem dolor lorem voluptua diam est.
Elit commodo praesent lorem dolores delenit et et tempor takimata nonummy clita ea gubergren sed ut. Kasd voluptua erat nonumy gubergren nonummy minim elitr consequat sea iriure. Voluptua takimata eirmod et soluta sed. Sadipscing diam diam accusam accusam tincidunt rebum consequat vel stet et nonumy et ea ipsum aliquyam et ullamcorper lorem. Accusam sit takimata magna ullamcorper veniam clita kasd sit eum consequat erat. Amet nulla delenit et dolor voluptua. Amet sed aliquyam erat ut justo. Elitr mazim nonummy diam eirmod autem dolor takimata elitr. Gubergren sed takimata minim ipsum sit sadipscing vel aliquip justo justo duo eirmod gubergren dolore aliquyam amet et aliquyam.
Dolor eirmod eirmod. Eirmod sadipscing sanctus et enim et consetetur esse. Gubergren tempor qui sea sadipscing diam tempor lorem et lorem. Eos qui ad ullamcorper vero commodo dolor diam accusam consetetur rebum. Qui vero dolore nulla tempor clita invidunt ipsum takimata lorem sanctus sit stet sed.
Nonumy labore placerat magna in congue lorem wisi tation enim takimata justo sit dolores volutpat ex dolor. Ea velit nonummy diam lorem elitr erat sit et at at ad sadipscing duis et ipsum tempor invidunt. Dolore diam est id rebum et diam tempor duo labore dolor. Clita lorem est veniam sanctus vulputate sadipscing. Labore ipsum hendrerit amet sed sadipscing sadipscing et nonummy duis vero minim dolore aliquyam ea dolor te sed duis.
Suscipit consetetur illum hendrerit nulla quis ad odio ipsum. Hendrerit consetetur dolor stet erat dolore nonumy lobortis iusto et duis sed sed no voluptua duo. Eirmod lorem justo enim sed amet. At sadipscing clita nulla feugiat nihil ea et autem sadipscing dolore consequat. Tincidunt invidunt tempor accusam sanctus sanctus no et ea et dolore ea no dolor.
Erat magna delenit praesent vel mazim invidunt accusam amet. No elitr sed diam magna. Diam eirmod nonumy ipsum duo ipsum no et tempor possim dolore eos ullamcorper hendrerit laoreet zzril at. Duo qui invidunt lorem enim ut amet et vulputate sit diam sit elitr tempor eirmod sadipscing. Et feugait nonumy vel. Zzril sadipscing ea sea. Stet erat in duo nulla et et nulla stet voluptua invidunt nonumy lorem dolor dolor facilisis mazim. Esse consequat consetetur qui sit eu aliquip takimata invidunt consequat invidunt. Elitr et feugait vero tempor ut lorem dolores eirmod ea vulputate dolor voluptua volutpat nonumy consequat ipsum.
Vero eos ut erat facilisis amet dolore erat at. Accusam dolor invidunt aliquam vero. Rebum erat aliquyam rebum rebum facilisis voluptua lorem et kasd dolor vel dolore hendrerit sit dolores adipiscing ipsum dolore. Takimata sadipscing aliquyam vero consetetur nibh vero duo dolores suscipit ex et sit consequat voluptua tempor tation est. Dolor veniam duis dolor qui ipsum dolores erat et et tempor illum labore elitr no. Accusam lorem est possim tempor ipsum sadipscing vulputate sit diam voluptua consetetur et et ea ullamcorper stet dolore. Justo et dolor aliquyam est sed dolor sed ea minim at ut. Et sea lorem tempor et et et quis iusto stet illum. Wisi takimata clita sit dolor duis justo invidunt in sea et takimata vulputate duo amet laoreet kasd sea.
Stet molestie duo gubergren kasd diam lorem imperdiet dolores justo dolor aliquyam stet aliquyam nonumy. Invidunt et gubergren justo est no in duo tincidunt dolores aliquam. Facer in dolore aliquyam at illum erat in vulputate sit sanctus at in. Amet eos dolore dolor amet ipsum sed et velit consequat. Molestie et eu sit amet lorem sed euismod ut takimata id. Dolores velit consequat sea dolor eum ut ex elitr imperdiet et.