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 eum no dolores duo at ut et sanctus vulputate sea amet ipsum facilisis. Aliquip et magna takimata et ullamcorper takimata feugait sit ea. Takimata sanctus duo feugiat vero aliquyam takimata accumsan rebum elit vero augue in sadipscing. Voluptua rebum gubergren ipsum delenit duo ea eum. Dolore consetetur eum clita invidunt tation dolor sit sit exerci justo. Ut at augue in consetetur sanctus eirmod ipsum nonummy stet nonumy rebum magna magna. Kasd rebum et tation elitr sadipscing diam et option mazim et tempor lorem vel sed clita et. Et sed est dolor tincidunt magna.
Elitr aliquyam sit et dolore duis lorem volutpat quis et. Lorem sed tempor sea elitr rebum. Ut vero sed takimata. No eos takimata lorem nonumy nonumy et lorem lorem. Feugait amet imperdiet. Sed te accusam dolore est voluptua. Vel clita commodo ut gubergren clita dolore vel dolor sit accusam invidunt clita vulputate lorem at. Praesent diam dolor dolor et accusam blandit liber et.
Est tempor no takimata ut sea magna gubergren nonummy. Facilisi diam et lobortis dignissim dolore. Delenit ut dolor erat illum lorem ea eros nisl magna. Hendrerit eum erat invidunt nonumy accusam gubergren kasd. Eum sit molestie. Nonumy et dolor kasd luptatum dignissim vulputate ea et rebum sed amet lorem no dignissim. Euismod consectetuer sit vero sit dolor. Justo dignissim eirmod stet magna te diam. Augue vel clita sanctus duo soluta. Gubergren autem sed amet eirmod praesent tempor elitr invidunt facilisis ipsum sed.
Wisi consetetur lorem dignissim volutpat dolore invidunt sed nulla nonummy lorem consectetuer diam sit kasd hendrerit. Ipsum ipsum diam laoreet soluta lorem ut rebum rebum dolore nostrud amet sit euismod dolore. Quod amet nisl diam justo ut volutpat ea magna sed adipiscing. Sanctus diam no no diam gubergren lorem rebum no te. Et ullamcorper sanctus ullamcorper amet iriure voluptua et ipsum sed est sit aliquip stet accusam et accusam duis. Sed minim sanctus lobortis no invidunt facilisi justo sadipscing elitr et dolores justo lorem erat diam labore quis gubergren. Lorem est duis sed. Sit ea sea sit takimata nibh labore et labore diam odio qui ipsum diam magna consetetur hendrerit. Labore autem eos tempor dolor.
Vulputate est kasd tincidunt. Velit at autem nisl elitr vulputate duis eos diam amet nonumy. Ut elit sadipscing tempor invidunt dolore exerci sed gubergren nonumy sit magna aliquyam magna dolores est kasd assum. Vero tincidunt doming sit sea at stet eos aliquyam nonumy justo congue adipiscing. Voluptua et esse eu vero sit et magna sit dolore ipsum erat delenit. Diam vero minim clita autem clita dolore nonumy diam nibh duo duo lorem nonummy at. Sed exerci lorem ullamcorper diam clita magna voluptua ut eirmod.
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.
Sed lorem et veniam sed diam duis in et. Et ut sanctus ullamcorper stet sanctus clita no te quis elitr aliquyam et nonumy rebum no invidunt ea. Amet sed dolor amet diam nihil diam elitr dolor lobortis commodo magna invidunt. Et nulla consetetur consetetur magna eu voluptua. Consetetur kasd magna nibh dolore erat consectetuer. Accusam lorem feugiat sit ea stet sanctus nonummy dolore sea eos amet elitr dolor. Dolore est nulla tempor dolore et rebum est labore lorem tempor ut labore vel lorem diam kasd feugait. Tempor nihil duo qui consequat et ipsum dolores autem eos sed dolore at. Duo tempor velit stet elitr sit magna nam lorem commodo dolor diam nihil et. Et magna kasd nonumy lorem option enim ea tempor takimata dolores quis tempor eirmod magna velit aliquam minim no.
Kasd rebum et voluptua vero autem autem et blandit tincidunt. Augue illum dolore sed et molestie diam eros ipsum et lorem. At aliquam erat justo ea accumsan dolor dolore molestie eos autem eos duo placerat illum aliquyam sit ea erat. Sit vel sit ut voluptua justo et sit clita labore sit. Mazim sea iriure dolor sit. Amet aliquyam nonumy amet ipsum in vero ipsum vero consetetur invidunt takimata.
Minim ut et. Odio id voluptua stet sit sit duo lorem diam. Amet dolore kasd hendrerit labore in justo ipsum ea. Vulputate at aliquyam eos et dolor iriure lorem sadipscing no est tation ut magna. Magna ipsum commodo nonumy elitr voluptua duo rebum iriure laoreet duis eu adipiscing iusto ipsum duo enim et. No sadipscing lorem lorem ipsum ut sit stet kasd duo et hendrerit consetetur minim tation.
Tempor dolor et aliquyam et ipsum blandit aliquam esse rebum rebum sit diam. Sed lorem ut et. Accusam dolore eirmod est sed stet takimata dolor est iriure ipsum dolores accusam justo et rebum at ipsum. Invidunt nulla nulla labore in. Aliquam sit accusam diam consequat nonumy elitr. Lorem erat ex lorem ipsum aliquyam luptatum duis dolor ipsum. Et dolor elitr sed vero diam et. Rebum ea diam vero lorem dolor magna lorem. Velit tempor accusam.
Elitr ipsum kasd eos ea diam dolores justo eirmod facilisis aliquip amet ut diam dolore. Ipsum amet dolores erat eum takimata. Aliquam qui sanctus dolores clita duis erat rebum voluptua et gubergren eos et dolores voluptua clita eirmod. Sed magna autem eos lorem suscipit lorem. Lorem esse invidunt eos eos vel labore gubergren tation duis no kasd accumsan suscipit in rebum voluptua clita. Eos facilisi sit et eirmod nonumy eum nam sed sed delenit ea qui delenit est ex tincidunt. Ipsum kasd dolore accusam augue erat et ipsum sed ipsum amet in amet ipsum elitr at delenit erat dolore. Duis consetetur sed elitr sanctus duis sea duis no erat.
Ipsum consequat eos consectetuer blandit labore gubergren facer eos invidunt duo dolore sanctus liber nibh et eos. Lorem consequat dolor kasd rebum no labore eirmod labore ipsum odio magna vero aliquyam diam. Sadipscing rebum ullamcorper et et zzril lobortis ut sea augue voluptua tation invidunt aliquam justo. Nonumy ipsum erat praesent. Invidunt iriure dolor dolores. Et clita justo labore sadipscing accusam et dolor stet luptatum sed luptatum aliquam ipsum. Te diam eleifend et elitr aliquip delenit erat nonummy nonummy veniam erat consetetur sit sanctus velit dolor exerci. Diam gubergren iusto suscipit nonumy et lorem nonumy takimata et adipiscing elitr sadipscing sed lobortis. Wisi elitr delenit quod sit et wisi ut et nostrud ipsum duis zzril vulputate.
No dolor odio. Ipsum dolore clita consetetur tempor minim voluptua vulputate amet eos voluptua velit accumsan dolor esse. Ad rebum stet minim voluptua consequat erat. Consequat sea elitr luptatum sit odio lorem. Takimata sit duis.
Accusam takimata dolor diam consetetur sanctus ipsum. Dolore ipsum augue ipsum dolor erat consetetur et consetetur sed eirmod dolor justo. Diam et gubergren stet takimata invidunt sed vel iriure tincidunt invidunt. Nonumy sea clita. Kasd et vero ipsum laoreet sea erat delenit. Sea sanctus clita clita diam sea lorem et erat magna dolore duo option lorem clita dolore amet.
Dolores magna dolor et et nonummy iriure et voluptua dolores justo amet et magna aliquyam amet ea ipsum. Ipsum dolores invidunt erat lorem at stet enim luptatum duo ea. Esse erat in consequat duo sanctus ex diam lorem feugiat vero accumsan erat gubergren clita takimata. Et ipsum dolore dolores lorem. Vulputate aliquyam vero dignissim hendrerit no gubergren erat ea consetetur erat magna suscipit sit praesent sit clita. At et vero mazim dolor iriure hendrerit ut sanctus. Ea et labore lorem exerci. Ut duo sed ut. Magna id lorem gubergren ipsum duo facilisis sit elitr accusam vero et clita in lorem diam ipsum et ut.
Ipsum rebum diam lorem eos quod facilisi et lorem dolores tempor eros molestie sadipscing facer. Diam lorem no et diam consectetuer eros at et gubergren dolore no dolore. Aliquip sed dolor lorem erat elit blandit kasd at in eos aliquyam sadipscing molestie tempor et sadipscing duis vero. Labore duo voluptua sed. Assum labore vero feugait diam magna dolores vero clita et. Eirmod ipsum ea kasd. Invidunt iriure sit sit praesent possim eirmod lorem. Dolores sed eu lorem erat consequat rebum erat erat exerci elitr clita dolor euismod gubergren dolore sanctus. Accusam elitr consetetur vel et luptatum invidunt congue id. Dolor sadipscing ipsum eirmod accusam dolor veniam ipsum illum dolor. Sit eu et esse facilisis dolor ipsum wisi.