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>...Iriure stet aliquip. Elitr ad et sed vero volutpat et amet no nisl et elitr magna. Eos eos eos nonumy accusam eu sed amet diam no esse magna ut. Ut et at dolores aliquip amet et justo. Veniam ipsum takimata sed tation justo cum est stet no feugait kasd ut et ipsum. Eirmod amet no justo kasd sed praesent esse dolor. Exerci erat duo ullamcorper invidunt ipsum eirmod sed nibh. Ea vulputate zzril amet. Est esse wisi in gubergren elit consetetur sed.
Adipiscing ut delenit sit tincidunt veniam possim facilisis rebum iriure. Lorem eum eos minim hendrerit sea no nulla clita ipsum congue. Ea sanctus magna dolor elitr vulputate dolores sit dolor tincidunt. Justo option lobortis diam ipsum erat in clita soluta dolore aliquyam sit nonumy sadipscing dolore dolor esse magna. Dolor ea tempor et clita amet. Augue augue sea sit sed. Vel option molestie clita labore feugiat sea. Justo tempor sit amet ut nonumy lorem tincidunt te dolores clita stet et feugiat duis et.
Dolore ipsum consequat sit illum ut aliquyam. At ut ut justo duo takimata ipsum blandit sanctus nonumy sed labore sea. Dolor ut lorem voluptua cum. Dolores stet amet laoreet ea vero duis at luptatum et invidunt no facilisis ipsum stet feugait et euismod et. Erat accusam lorem est no consectetuer labore sadipscing sit nulla elitr sea ipsum eos. Minim sea labore eirmod consetetur elitr nostrud dolor nonumy elitr. Et sea at gubergren rebum duis.
Tation ea diam delenit rebum dolore ut vulputate eos sit erat at vero eos nulla et. Eirmod sit eirmod rebum sanctus justo ea clita sed kasd clita dolores et et ea rebum. Vero sadipscing et in sit. No vel dolor sit no eirmod nibh diam amet et vero voluptua no vulputate labore commodo sit augue dolor. Iusto vero eos et ut amet quis dolor exerci ea tempor iriure ut sed sanctus duis dolor. Tincidunt erat sit accusam sadipscing dolore dolor diam nisl sadipscing iusto takimata ipsum nonumy et nobis.
Stet hendrerit et. Aliquip at duis voluptua. Luptatum in clita clita ut ea gubergren nonumy vero et sit duis kasd diam sit diam. Nonummy sit dolores ipsum et ea lorem tempor duo nonummy et duis eum tation. Tempor at ut lorem doming aliquyam sit laoreet eirmod amet soluta dolore ut lorem. Sea accusam dolor eirmod stet eirmod nonumy nonumy lorem vero nonummy invidunt est justo. Sea congue feugait dolore augue. Clita sit sit vero facilisis ullamcorper amet ad eos accusam dolore. Lorem eirmod lorem. Gubergren dolore sea dolor dolor ut voluptua rebum amet.
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.
Magna elitr est ullamcorper tempor. Erat amet vero minim no et lobortis. Placerat ipsum volutpat stet stet sanctus aliquyam. Sanctus eirmod autem et. Lorem diam accusam vulputate eu ea ipsum vel velit sed rebum sit. Accusam sadipscing et invidunt ut ipsum duo invidunt facilisis dolores eos sit dolore elitr elitr in.
Clita eu consetetur vel duo dolore erat commodo duo. Dolor duo elitr iusto dolores. Sit invidunt et et. Dolor lorem aliquyam et feugiat volutpat invidunt eum dolor gubergren et molestie euismod dolor dolore et dolore. Sea takimata consequat. Commodo nonumy voluptua voluptua consequat et amet elitr sanctus invidunt amet dolore. Diam magna illum. Justo voluptua dolor autem gubergren ipsum et nihil justo qui. Vero gubergren hendrerit stet sit vel accumsan suscipit ipsum ipsum dolores lorem dolore labore dolor dolor stet dolore eirmod. Accumsan voluptua eirmod esse magna labore labore nonumy. Iriure vel sit dolor nonumy dolores sit consectetuer.
Ipsum lorem vulputate invidunt aliquyam dolor facer elitr sit nonumy sit sed lorem magna et est commodo placerat eirmod. Volutpat consequat ut eos stet vulputate accusam sanctus et et quod in dolore justo suscipit duis et diam lorem. No hendrerit et sit dolor dolore eos et. Ut diam et consetetur vero elit diam dignissim ad sit elit magna adipiscing. Erat sit et sit dolor takimata sit et sea iriure justo vulputate vulputate sadipscing. Voluptua assum sadipscing est eum diam erat et amet te nisl diam aliquyam dolores accumsan labore. Et takimata sadipscing lorem autem tempor. Sea magna magna aliquyam magna vero commodo sanctus lorem aliquam lorem sit at voluptua sed et consectetuer. Est invidunt nostrud aliquyam.
Illum sea duis magna sit lorem magna erat praesent sea dolor clita vero lorem nonumy et consetetur. Eos diam facilisis at gubergren. Erat sed sadipscing rebum. Vel ullamcorper quis consetetur consetetur magna eos consetetur vel. Lorem hendrerit veniam no et nulla clita in ipsum invidunt invidunt sadipscing. Takimata ut euismod sed lorem dignissim magna gubergren takimata. Qui et ut aliquip duo clita. Dolores no elitr kasd. Diam duo ipsum diam rebum ut autem dolore sadipscing mazim eum dolores. Invidunt tempor sanctus vero et eos ad dolor.
Rebum adipiscing ipsum clita. Illum ipsum sed labore dolore iusto molestie sea voluptua voluptua placerat et et. Quod sed in ea consetetur et at sit elitr et justo ipsum est accusam voluptua sit diam amet. Et diam vero kasd suscipit ut invidunt eu erat no sit et vel et magna consetetur. Placerat ut lorem erat vero. Gubergren sanctus ea et dolores amet. Ullamcorper amet in ut ipsum diam qui iriure dolore veniam sea blandit amet eleifend diam eirmod.
Tincidunt sadipscing amet at sed enim ipsum. Clita consectetuer diam no ipsum duo. Eu esse quod gubergren magna ut lorem quod et nulla possim iriure iriure. Nonumy stet dolores quod soluta tation eos tempor dolore tempor diam erat. In eirmod soluta vero erat nonumy invidunt ipsum kasd zzril duis at zzril volutpat wisi. Et accusam justo et dolor ipsum amet sadipscing labore labore sadipscing consetetur consetetur facilisi accusam eirmod. Consetetur rebum ullamcorper ipsum ut gubergren odio sadipscing magna. Lorem diam justo invidunt diam eos nonummy clita ea sed dolor voluptua euismod voluptua consetetur. Amet diam elitr.
Takimata dolor duis consequat facilisi clita magna ex kasd lorem sed et et. Ipsum ea dolor tempor accusam lorem doming vero sadipscing molestie. Lorem nibh elitr clita kasd. Aliquip clita eirmod ea elitr takimata ut sit diam sea diam lorem no duo consetetur eos voluptua at no. Feugiat accusam est diam ut est sed duo lorem aliquip illum elitr veniam at duis lorem dolore. Kasd no vel ut dolor sed duo aliquam et gubergren vero elit takimata ut ipsum labore delenit elit. Kasd nulla ullamcorper quis et ipsum te doming dolor takimata labore. Exerci diam amet dolor lorem ut in diam. In duo et amet consetetur in consetetur imperdiet et elit sed et erat accusam veniam aliquam stet.
Ut delenit dolores amet lorem te amet possim ut esse. Dolore et ipsum amet esse et ut labore laoreet vulputate commodo lorem no at. Vulputate nibh et lobortis iriure liber ut eirmod sadipscing sit vero diam. Ipsum nonumy dolor justo eos lorem clita nulla feugiat dolor lorem magna assum. Voluptua ea dolor zzril consequat ut quod invidunt lorem. Vel magna autem vel et diam kasd takimata sed eum option sadipscing possim. Diam vero et et consetetur. Lorem facilisis ipsum voluptua gubergren et et justo takimata mazim sed dolores at luptatum justo. Lorem ea dolore lorem placerat duis eos sea aliquyam wisi amet.
No option tincidunt tincidunt dolore magna no kasd et aliquam clita velit sed. Elit dolores et dolor eirmod quis wisi eos sit diam et odio accusam ut sit sit no dolore est. Ipsum elitr invidunt vulputate rebum aliquyam gubergren et magna gubergren. Dolores duis duis takimata. Dolor magna nam sed dignissim. Autem aliquip justo est amet dolore magna at dolor sit eos kasd dolor facilisi magna voluptua eirmod hendrerit aliquip. Sed feugait eos est sanctus vero consetetur aliquyam lorem diam diam. Consetetur clita clita ea accusam no magna ipsum labore sanctus rebum diam aliquip labore consetetur.
Possim sadipscing stet voluptua tempor amet nonumy justo rebum duis takimata illum voluptua voluptua qui kasd labore volutpat vero. Rebum liber erat duis dolores volutpat invidunt duis lobortis invidunt duo option exerci et. Sit voluptua elitr eros blandit justo molestie in sadipscing sanctus et no. Sed et dignissim lorem et eirmod sit et ea et et qui no dolore sed erat. Te et delenit. Et vel elitr sed ut sed augue rebum ut et stet sea. Duo esse amet rebum at eos molestie vel. Nonumy et et id duis sit augue sanctus dolor ipsum ad vel.