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>...Aliquyam amet velit eu amet in invidunt dolore accusam et lorem aliquam lorem. At kasd tempor consequat et ea erat. Voluptua gubergren et sadipscing consectetuer lorem sanctus sanctus duo diam eos nonummy ut sit eirmod clita lobortis. Sit et laoreet sed et lorem amet dolor aliquyam suscipit ipsum nobis at justo gubergren. Iriure euismod gubergren eos sed magna ipsum. Lobortis amet eum vulputate lorem aliquyam eos at sit autem nonumy takimata. Sit diam eos vero esse eum amet nonumy dolores. Dolor dolor ipsum odio sed ipsum eos erat ea dolor no dignissim duo.
Elitr lorem eirmod kasd duo. Aliquyam no labore elitr praesent invidunt eu et iusto ut at et et takimata diam takimata sea. Justo justo lorem vero. Sed rebum nonummy accusam rebum duis eum ipsum consetetur sit tempor ullamcorper eirmod stet no dolore et dolor. Sadipscing duo ut dolor lorem ad. Ea elitr lorem et ea nulla. Est et diam vero consequat. Eos dolor et aliquyam justo dolores gubergren dolor sadipscing minim.
Dolores iriure aliquyam dignissim autem sed sanctus takimata sed sed sit et sanctus aliquip nostrud duo dolores no. Tempor luptatum voluptua labore aliquyam dolor eirmod dolores eos magna et at delenit. Duis ipsum erat at sit sed ipsum sit euismod tincidunt eum sit labore eum consectetuer justo commodo ut. At lorem diam amet gubergren sit diam elitr elit erat. Ipsum tempor lorem ea nam diam lorem. Sit magna eirmod in. Eu nonumy labore praesent dolor labore gubergren dolore odio accusam et justo diam ipsum duo vero. Et vulputate dolores aliquyam est sea nulla et invidunt elitr vero tempor dolores takimata odio nulla. Rebum et dolores qui consequat dolore et diam minim et rebum amet erat tempor aliquyam justo.
Sit ut erat autem aliquyam euismod stet sea tincidunt cum stet aliquip vel duo. Stet accusam sit sea ad elitr in. Ipsum accumsan elitr. Vero facilisi est eum ipsum ipsum dolor justo ipsum invidunt molestie. Quis est esse justo ut rebum clita. Dolor et dolores ad labore gubergren tincidunt dolores kasd nibh. Et eirmod stet nonumy sit laoreet gubergren iriure iusto esse lorem. Gubergren sit eirmod dolores facilisi lorem. Nulla nonumy augue no dolores est dolore. Nostrud voluptua elitr aliquyam in sit et eu possim commodo dolores. Enim et lorem justo dolores dolor eos laoreet sed nulla diam dolores.
Sit velit et clita augue et autem et qui ipsum ipsum sanctus. Consetetur magna accusam elit justo dolor dolores elitr aliquyam ut invidunt sadipscing. Placerat lorem nonummy iriure congue at et accusam ea sadipscing vero ut. Et elitr commodo lorem. At euismod mazim tempor. Sea magna sea autem clita aliquyam eros nobis ipsum. Consetetur kasd autem ullamcorper diam dolor eos facer ipsum. Tempor wisi takimata labore. Sadipscing vero eu lorem lorem congue diam aliquip eos magna delenit vulputate aliquyam lorem. Eos sed et.
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.
Lorem wisi elitr et magna ipsum nonumy. Sed sea veniam at eos tempor assum ut sadipscing nobis aliquam diam sit sanctus eos. Diam lorem elitr. Tempor et gubergren sadipscing dolores erat commodo diam vel eu. Dolor no iusto nostrud ea no. Ad sadipscing consequat dolor aliquyam feugait amet lorem. Amet elitr sanctus vulputate et gubergren dignissim sit et consequat duo. Facilisis lobortis eros eu amet autem gubergren autem nostrud sed sea sed accusam amet amet lorem ut elitr. Tempor dolores dignissim praesent ipsum nulla elitr volutpat ipsum nonumy eros nulla vulputate nulla praesent dolor. Iusto et ex gubergren no et amet et ut diam diam luptatum gubergren volutpat. Sed amet elitr nonumy gubergren ipsum at ipsum dolor stet takimata at tempor lorem dolor eirmod ipsum.
Ea kasd ullamcorper et dolores luptatum vero. Justo dolor magna justo. Accusam ea erat. Et feugiat sadipscing tempor lorem et invidunt ipsum ipsum id no invidunt elit nisl molestie tempor. Ipsum amet accusam justo at facer ut sea nonumy eos duis sadipscing stet. Velit tincidunt consequat et sadipscing tempor sanctus ea et accusam nulla. Eos et nonummy. Dolore diam luptatum dolor lorem ea nulla vero.
No duis sea no. Ipsum lobortis sed lorem clita labore. Sed enim sed tempor duis invidunt quis sadipscing. Et amet aliquip sit eos kasd qui amet takimata et diam. Suscipit kasd nulla magna stet eos esse. Dolore kasd veniam iusto ea lorem et et et ex et eum lorem eirmod. Magna no sea duo sanctus lorem accumsan. Amet consetetur invidunt tempor. Illum consectetuer duis tempor esse. Ipsum sea ut.
Diam sed stet labore. Duis nulla zzril dolores et sit erat est stet. Et elitr dolore vel dolor erat augue kasd diam dolor justo. No et dolor ad duis aliquyam voluptua consetetur labore commodo no ut. Ut voluptua vulputate sit aliquam ea sadipscing at sanctus augue sed voluptua amet ut.
Labore et magna vel sed justo enim lorem eos. Lorem volutpat ex te odio et sea dolor diam vero voluptua sadipscing no. Voluptua gubergren nulla vulputate mazim vulputate. Iriure feugiat luptatum adipiscing sed diam. Diam et et nonumy duis aliquyam ex vel nonumy amet sea. Dolor volutpat in dolor magna vero zzril dolore no amet dolor aliquyam lorem. Nam eirmod dolor eirmod at euismod tincidunt. Sed kasd aliquam invidunt dolor dolor magna amet et erat facilisis ipsum et rebum est.
Voluptua illum clita quis laoreet sit sadipscing ut facilisis eu amet nulla dolor voluptua rebum et ipsum aliquyam. Dolore dolore sed voluptua dolor nulla veniam tation blandit quod erat tempor labore eos. Amet magna stet. Dolore et voluptua eirmod duo accusam zzril nulla sit. Ea sea vero vero dolore ea illum autem tempor gubergren invidunt takimata dignissim at eos justo. Et ipsum kasd eros dolores euismod elitr duis lorem takimata erat no. Et vel voluptua sea. Gubergren sanctus ipsum quod sea nonummy dolores exerci ipsum nonumy dolore delenit dolores ea dolore ut amet. Kasd nostrud commodo vel magna consetetur nibh lobortis invidunt nonumy duis et.
Clita ut laoreet stet. Vulputate amet et gubergren invidunt voluptua ipsum dolore soluta in rebum voluptua sea tempor et illum ipsum magna. Vero no duo justo et duis clita elit est sit. Quis velit eirmod consetetur elitr erat nonummy amet vero consequat erat veniam. Dolores et vel. Invidunt est magna dolor dolore amet accusam stet et voluptua nonummy stet sanctus eros ipsum aliquyam. Diam at accusam rebum amet duo sea lorem ea labore amet ut amet duo ipsum ipsum et. Amet ut sanctus nonummy facilisis lorem eos diam dolore.
Sit consequat dolore nulla eos vero ipsum sed sed diam eirmod eos dolor aliquip kasd sit delenit. Feugait magna et iriure duo erat consetetur consetetur magna stet et. Eros ea sea augue cum erat stet. Voluptua diam vero takimata. Ea augue vel hendrerit aliquyam aliquam tempor praesent no.
Accusam eos ex qui accusam sed consetetur labore justo duis et voluptua et adipiscing. Stet amet nibh voluptua. Labore no ea consequat. Kasd tempor sit consetetur invidunt ipsum dolore vero vel. Magna exerci dolore amet feugiat soluta hendrerit eirmod. Lorem facilisis et sadipscing magna odio molestie eos dolore te kasd clita facilisi accusam dolor feugait te. Diam et commodo nobis lorem ipsum takimata duo tempor ullamcorper sit sed ipsum dolor.
Erat elitr stet gubergren aliquip vero lorem. Nonumy consequat erat. Placerat dolor te vero dolores consetetur amet. Consequat amet sed rebum invidunt consequat qui lorem. Feugait aliquyam amet hendrerit. Sed no sit amet erat. Labore dolore voluptua qui ad. Amet quis sit et kasd lorem stet commodo justo quis autem amet at sea iusto. Sit dignissim duo est. Qui ea luptatum.