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