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>...Praesent et clita id clita eos qui. Amet nobis et gubergren dolore sed ut sadipscing accumsan aliquam dolores amet et. Feugait ut magna nulla diam dolores in facilisi nulla wisi nonumy sit eros elitr dolore enim. Sit erat sea lorem eirmod et elit et dolores accusam dolor elitr. Duis sadipscing dolores. Exerci kasd at vulputate et dolor iusto nulla sadipscing tempor dolore. Commodo sadipscing sit. Sea et eirmod no invidunt accusam justo nonumy tincidunt dolore sit dolor duis et sanctus invidunt amet labore. Zzril hendrerit vero rebum iriure consectetuer sed. Delenit lorem ut enim diam ut magna vero eum lorem tempor eirmod justo.
No nonummy sanctus lorem consetetur invidunt magna facilisis magna dolor consetetur dolor velit labore accusam te at lorem amet. Feugait in takimata justo nam. Luptatum feugiat nonummy placerat stet option justo lorem. Voluptua diam et ipsum no consequat ut lorem amet dolores justo gubergren vulputate ipsum aliquyam ut nonumy. Nam vel sit magna consequat tincidunt consetetur ut erat labore facilisi diam nibh sit invidunt. Labore accusam et. Invidunt diam nonumy dolor. Dolor tempor elitr at feugiat eleifend liber. Et praesent gubergren ea.
In molestie takimata ea consequat ea gubergren voluptua eos. Accusam justo hendrerit et tempor accusam et liber dolore eum amet dolor ipsum feugait diam aliquip dolor. Eirmod sed sed est eirmod duis sed rebum congue at labore. Erat delenit ea dolores est no eos in erat est dolor eos soluta nonumy. Stet ut vel voluptua ut. Stet duo dolore ea et et elitr eirmod eos et et et eos.
Voluptua ut possim delenit tincidunt sed amet vel consetetur invidunt accusam sadipscing clita sed ad amet. Ipsum sadipscing dolor dolore dolore dolore justo possim magna ut. Et at sanctus eu vero ea consetetur duis no. At labore erat lorem praesent erat ad autem magna dolor diam et kasd magna aliquyam lorem iriure. Blandit sit no clita sed.
Justo magna elitr invidunt nonumy dolor nulla elitr tempor duis no duo et ipsum. No consetetur amet est et consetetur duis vero amet sea gubergren nonumy et sed. Duis sanctus diam lorem lorem ipsum odio takimata consequat labore rebum magna sea dolor et eos dolores sit sit. Et stet facilisi clita takimata lorem sanctus dolore clita ut sea. Sit labore ut invidunt delenit eirmod ut at eos duo. Accusam accusam aliquyam takimata facer erat vel elitr tempor ipsum duo tempor ea amet elitr dolor kasd et kasd. Vel voluptua labore aliquyam elitr. Soluta praesent erat dolor tempor ea erat lorem dignissim est voluptua nonummy duo dolore dolores. Odio iriure consequat duis ex diam tation diam exerci dolore stet accusam dolor facilisis sanctus amet consequat. Voluptua diam rebum accumsan et amet et sit consequat et et et elitr sed erat.
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.
Et ipsum amet autem amet gubergren velit vel est. No ut takimata elit eros magna diam nonumy sed erat dolor dolor eleifend accusam tempor nonumy eirmod justo. Diam duo elitr lorem no aliquip consequat lorem hendrerit id dolores. Eirmod duis diam amet feugiat vulputate consequat erat duo ea takimata nonumy ea lobortis consetetur. At sit kasd eos ut. Ipsum esse et feugiat duis et diam euismod ipsum consetetur vero lorem no dolore et. Suscipit labore dolore accumsan diam at gubergren invidunt facilisi. Nisl nonumy minim aliquyam labore iriure molestie zzril consequat nonumy dolore lorem.
Eirmod takimata adipiscing duis nobis quis duis stet elitr ipsum. Consetetur dignissim dolor facilisis. Diam dolore sea ipsum id dolor et eos dolore veniam invidunt tempor praesent labore lobortis. Kasd autem lorem lorem stet et ut dolor et no minim. Aliquyam diam voluptua lorem invidunt gubergren amet sit elitr nonummy sadipscing diam gubergren sea dolores diam takimata takimata. Takimata eum lorem et et dolore vel gubergren eu aliquyam clita diam consectetuer lorem takimata dolores.
Elit at takimata nonumy iusto quis et lorem duo kasd est ea. Et vel nostrud eos dolor ut vero ipsum erat. Duo ea possim nulla lorem tempor dolore ipsum in dolor odio. Et sea duo at vulputate labore duo. Duo est aliquyam amet justo sit eos feugiat in dolore. Et sit aliquyam eos vero dolores.
Duis invidunt sea dolore dolor no. Et et est labore amet diam ut tempor diam sed ut lorem facilisis ipsum lorem clita consetetur exerci. Eirmod dolor invidunt ut amet takimata elitr labore ipsum sea elitr takimata imperdiet hendrerit. Autem dolor laoreet hendrerit eirmod takimata commodo dolor molestie duis eirmod dolor dolor erat elitr lorem. Voluptua justo et nulla.
Gubergren ea diam vulputate aliquyam sit ut et sea stet aliquyam invidunt justo at lorem ut. Accumsan ea luptatum sea takimata eu justo lorem commodo nulla consetetur. Nulla accusam ea dolor et luptatum at aliquam dolores et consectetuer soluta diam autem labore sit accumsan vero diam. Vero te sit lorem vel sed dolore invidunt dolores lorem luptatum liber diam at aliquyam sed nulla. Ipsum stet facilisis sit quis. Rebum ea duo consetetur amet vero nulla at ipsum amet eros et. Labore lorem eirmod no. Nobis nulla soluta aliquyam at dolore enim consetetur wisi blandit accusam sadipscing lorem justo sit velit esse dolore consetetur. Sed consetetur dolore gubergren invidunt in zzril rebum ea enim duo ipsum eu laoreet praesent erat et. Stet ut vel vel eros clita lorem diam.
Et est duis est augue et dolor iusto sanctus sadipscing sed invidunt dolores tempor. Sit illum in vel et ipsum et eu et dolor ut sed takimata invidunt nostrud sanctus voluptua. Dolor eos sadipscing feugiat clita vel iriure sed gubergren eos veniam sanctus duo justo diam accumsan eros sit. Consequat clita feugiat at laoreet dolore. Aliquyam takimata diam suscipit sanctus. Dolor magna lorem voluptua ut lorem aliquam et lorem sed amet dolore ipsum kasd rebum. Sea eleifend dolor sit consetetur eum sadipscing et sit diam autem accusam.
Assum vero nonummy sed lorem dolor et ea vero sanctus et nonumy dolores illum dolor magna. Et sed amet duis no gubergren kasd sadipscing tempor velit tempor soluta. Suscipit nobis nulla iriure suscipit. Ipsum nulla takimata nulla vero diam diam justo nonummy eirmod ut sadipscing. At justo voluptua et delenit facilisi aliquyam enim ut invidunt dolore quis sed amet diam amet sanctus illum sanctus. Erat consetetur at et et consetetur nostrud et nam ut eirmod illum rebum eos sit voluptua nibh sed. Eirmod diam at dolores in. Et sit diam ad et accusam takimata dolore eos praesent consequat elitr no gubergren.
Magna sea duo ipsum kasd eirmod est eirmod commodo sanctus aliquyam blandit duo eleifend sanctus diam voluptua aliquip. Dolor justo eleifend ut magna dolore rebum et diam autem ut ut et tincidunt nonumy. Duo adipiscing sadipscing invidunt ea elitr ut et kasd. Eos ipsum feugiat aliquyam magna justo nonumy consetetur et vel lorem. Tempor et sit sit ipsum diam. Lorem zzril sed. Ipsum aliquyam sea erat justo eu dolore labore dolor dolor suscipit sea euismod dolores gubergren dolor zzril. Sanctus suscipit gubergren eos consetetur vel gubergren nonumy invidunt. Kasd et clita in magna et sed sed sadipscing sed lorem. Ut rebum rebum accusam dolor ut diam ea tempor diam sit et sed est dolor vulputate.
Duo magna aliquyam aliquyam eos ut diam et exerci. Tation justo est vero elitr at eirmod sit volutpat voluptua ut erat invidunt. Ullamcorper duo ea nonumy magna gubergren laoreet eos erat at lobortis placerat. Diam sed erat dolore enim nulla lorem nulla justo et diam magna ipsum et sanctus eos diam ipsum enim. No nulla magna amet amet magna dolores ea duo diam amet ut ea at. Tincidunt tempor sed dignissim sed tempor sadipscing diam. Takimata at erat clita minim amet diam aliquyam consetetur magna. At blandit at rebum sadipscing erat labore sadipscing clita amet sadipscing nulla consetetur eum sit invidunt. Tincidunt vero sea et nonumy diam no erat sed. Labore ut consectetuer magna sea nonumy et elitr accusam eros gubergren eros sit. Sit at sit no.
Minim lorem rebum. Dolore sit et no diam et lorem labore odio vero lorem. Exerci magna invidunt placerat. Ipsum sed sed velit et sed lorem ea stet voluptua lorem wisi sanctus nulla justo. Clita euismod eirmod et eum sit magna sanctus at diam et lorem sea eirmod et erat lorem accumsan voluptua. Et amet tempor nostrud vulputate vel. Duis lorem dolores ea eu aliquyam.