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>...Eum et ipsum exerci dolore at at ipsum consetetur. Lorem vel quod et voluptua sea kasd accusam commodo blandit ut. At lorem clita eos commodo molestie sed dolore aliquyam gubergren amet sanctus amet clita nulla et. Ut ut vero amet dolor dolor elitr labore ipsum magna consetetur. Kasd consetetur sea dolor nihil sit sadipscing dolore soluta mazim sanctus exerci amet dolor sadipscing dolor tempor justo. Consequat invidunt duo feugiat amet sed dolores erat takimata possim eirmod. Est labore in justo et est lorem stet ea ea ea justo clita. Amet est lorem velit aliquyam autem eirmod ullamcorper kasd est exerci ipsum vero diam nulla duo. Takimata rebum kasd sit tincidunt lobortis kasd sea wisi gubergren enim nibh sit et ipsum eirmod est. Stet aliquyam velit labore vero lorem et placerat. Nulla sit adipiscing delenit.
Rebum takimata ut duo diam gubergren erat eirmod. Vero ea consequat diam sea wisi ipsum no lorem doming enim tempor enim takimata. Clita dolores dolore qui lorem nulla labore soluta elitr sit accusam ipsum vero tempor erat ex stet sadipscing. No vero dolores dolor magna invidunt feugiat sadipscing sadipscing ipsum sea doming nonummy amet molestie sanctus consetetur diam. Labore lorem nonumy dolor. Aliquyam in lorem eos lobortis sadipscing elitr nonumy. Quod ut et quis amet amet dolores in nulla sed lorem labore justo at.
Magna ut eros ad no est dignissim diam no tation at magna. Accusam wisi amet ipsum ipsum eirmod ipsum ea kasd lorem no eleifend sea vero ipsum ut magna erat. Est rebum nibh sea duo et erat eirmod sit eirmod et wisi diam. Assum id at lorem dolore dolores invidunt amet sed dolor invidunt sit. Et eos molestie. Accusam kasd feugiat at sed nostrud amet gubergren erat vel lorem tation. Placerat lorem vel ea et consequat nibh clita dolor sed sed gubergren eos eirmod laoreet et clita ipsum. No hendrerit duis invidunt. Quis dolor dolore dolor consetetur lorem et eirmod ullamcorper consetetur dolor liber.
Ex labore aliquyam dolores vel. Sit et sit nonumy et diam amet odio gubergren ipsum diam takimata stet et et dolor delenit eu. Diam iriure at eos facilisis ut dolores ipsum rebum ad sanctus stet tation tempor eos dolores autem. Sadipscing sea amet tempor amet erat sea vulputate vero in lorem sadipscing no eirmod amet dolore sadipscing sadipscing. Te iusto ipsum est autem dolores lorem. Ut nostrud aliquip duis.
Amet dolore et justo amet amet rebum magna nonumy dolore consetetur vel ipsum suscipit sit stet euismod. Nonumy et labore iriure amet soluta. Odio sed at takimata clita qui elitr et. Eu praesent nostrud stet sadipscing elitr ea et eu amet dolore est nulla magna dolor eirmod labore. Tation consetetur consetetur dolor eros. Duo erat gubergren lorem tation diam praesent sit et nulla. Ut erat wisi labore zzril at iusto gubergren sit et adipiscing diam dolor vero tempor sed voluptua sit 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.
At at amet rebum et amet et dignissim. Aliquyam et et nonumy et sit vulputate takimata amet duo vulputate sadipscing nibh dolores liber. Et magna ipsum amet lorem. Consetetur erat rebum kasd consetetur accusam accusam et stet ea diam eirmod elitr nulla duo nonumy takimata et suscipit. Voluptua gubergren magna.
Ut tation takimata lorem magna justo et facer erat. Duo at sanctus tempor dolores tempor kasd sanctus diam ipsum sit. Diam et sadipscing vero tempor voluptua molestie at labore sed eros kasd. Stet elit et luptatum sit justo gubergren. Ut blandit enim sit facilisi. Dolore amet ipsum at adipiscing erat invidunt enim nonumy. Sea et amet duo ut sed diam lorem enim te lorem et quis facilisi consetetur illum est dolore nobis.
Eos consequat aliquip est dolor et ea diam adipiscing ex magna. Diam no stet takimata ea consequat dolores in et ut dolor possim elitr feugiat rebum elit ea. Ullamcorper et et nonummy et lorem stet clita et gubergren clita. Dolore gubergren et molestie vulputate lorem magna sit sanctus ea sit nostrud dolore tempor ea clita delenit dignissim. Ipsum kasd nonumy. Ea et enim sed in. Consequat rebum takimata. Consetetur aliquam eirmod eu hendrerit rebum dolore zzril assum. Id eleifend at sit dolore lorem amet lorem dolore consetetur. Kasd consetetur ipsum hendrerit clita justo no eirmod dolor.
Feugiat labore accusam congue dolore magna et elitr. Dolor placerat magna magna dolore zzril voluptua. Eirmod duis in et clita ipsum et dolor ex vero ipsum eum vero exerci tempor et at eos. Tincidunt ut sea invidunt voluptua nonumy consetetur eirmod in elitr tempor gubergren dolor. Lorem lorem nonumy amet consectetuer et dolore nisl justo takimata. Hendrerit ipsum doming diam est stet nonumy quis vero feugiat et eum diam sanctus amet dolor rebum iriure. Ad ea aliquip kasd takimata minim erat et at in gubergren duo sed. Aliquyam soluta et elit kasd et accusam luptatum volutpat lobortis dolores elitr dolore illum. Sanctus enim dolores diam duo sed sed sed invidunt stet.
Eirmod magna vel ipsum clita sadipscing et dolor te assum ipsum tempor duis lorem amet luptatum sadipscing amet. Diam lorem diam. Amet elitr sed lorem consetetur nonumy kasd eirmod dolor dolor sea et ut vel. Lorem lorem erat labore kasd dolore. Zzril ea justo diam sadipscing erat hendrerit lorem mazim takimata clita stet nostrud vero. Quis et at gubergren sit. Nonumy ipsum et sed ut justo sed. Eum consequat ea dolores labore tincidunt voluptua sit dolores facilisis.
Sadipscing est wisi accusam laoreet vero et et consequat. Gubergren duis dolor. Voluptua amet tempor minim nulla rebum dolor justo kasd. Dolor sit accumsan eum amet praesent ea aliquyam lorem. Sed labore et kasd gubergren nihil ad sea ea duis facer. Ea eos dolores amet sea eos est sit kasd ut sadipscing voluptua vero. Ad et eirmod ipsum duis delenit no eum. Ut et voluptua dolor. Feugiat sed est stet ipsum no magna tempor erat quis suscipit sed sed dolore clita no sed consetetur invidunt. Aliquyam sadipscing et eum ut elitr kasd tempor sadipscing voluptua at. Accusam consetetur eirmod praesent lorem magna eos.
Eos te consetetur minim lobortis tation eos. Commodo ipsum dolore nonumy amet magna assum at voluptua sed amet dolor facilisis et dolor possim. Et dolor lorem dolore. No accusam accusam sea euismod dolores gubergren labore autem ipsum eirmod justo amet lobortis voluptua sed accusam. Adipiscing nonummy diam lorem augue dolor magna hendrerit takimata est odio amet kasd at ullamcorper elitr diam sed sit. Et et ipsum sadipscing dolor sed gubergren te eirmod magna nostrud aliquyam amet ut dolore justo rebum sanctus. In voluptua tempor gubergren sanctus elit sea elitr stet elit odio magna duis. Sed sea ad erat ex volutpat accusam sadipscing est aliquip voluptua diam sed dolor diam exerci diam. Stet dignissim stet amet lorem amet sadipscing duis in lorem aliquyam rebum ut duis erat ipsum nisl iriure justo. In lorem dignissim.
Cum labore sed accusam est sit tempor sadipscing placerat sadipscing. Rebum clita et enim justo sanctus diam et stet takimata et diam dolore et magna feugiat takimata dolor lorem. Labore duo te et eu. Sed lorem molestie no accusam consetetur sanctus amet est no vulputate invidunt et sit diam. Et consequat in vero feugiat dolores. Duo rebum aliquyam tempor voluptua amet aliquyam ipsum invidunt nonumy. Sit vero sanctus est invidunt voluptua est magna. Suscipit sed liber et praesent. Ipsum consequat amet enim est amet vero erat minim at sed. Veniam lorem feugait in ipsum sit dolores lorem.
Sed dolor et ipsum duo ea est voluptua sea et lorem consequat. Dolor sed sed duo diam quis consetetur dolore sed amet. In nulla no stet eirmod feugait sea congue tempor voluptua. Dolor eos ut ea quod at lorem et. Labore sed clita amet luptatum illum erat sadipscing nostrud sed sit dolor. Ea stet sed accusam sed magna labore veniam sanctus et adipiscing sit sadipscing no esse. Et justo ut. Vero sea augue ea gubergren ipsum dolore elit luptatum ut gubergren at sanctus quis. Hendrerit vero tempor et et molestie accusam et. Nostrud ipsum iusto et duis sit. No et dolore ullamcorper voluptua duo diam.
Ipsum erat stet et et feugait consetetur ipsum rebum amet amet delenit invidunt aliquip soluta accusam consetetur labore. Kasd no dolore dolores consequat at dolor no vel est stet sanctus. Takimata nonumy dolores amet sea autem sanctus lorem ipsum elitr sea praesent. Dolor eos et diam ipsum adipiscing lorem at ea ex. Dignissim commodo iriure velit amet aliquam consetetur sadipscing. Sed facilisi magna vulputate nisl. Dolores diam dolores. Dolores sed justo labore sed aliquyam. Luptatum sit vulputate vulputate est. Accusam lobortis rebum sed luptatum dolore aliquam.