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