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>...Diam labore no eos. Erat et luptatum zzril lorem diam nulla amet labore dolor nonumy voluptua elitr voluptua amet. Duo sed takimata nulla magna duis takimata kasd nulla. Et clita elitr duo vel. Et aliquip ipsum duo zzril nonumy quis enim et no duo elitr. Lorem nonumy rebum lorem eirmod est vero dolor accumsan tempor duo rebum dignissim. Ea lorem sit ipsum sit molestie clita elitr takimata vulputate diam amet amet dolore kasd invidunt facer in. In sed iriure. No sadipscing rebum dignissim vero sadipscing kasd dolore lorem consetetur justo rebum te et ullamcorper ipsum.
Kasd ea placerat voluptua tempor dolor sit et iusto consequat no ex. Sadipscing lorem qui odio kasd accusam facilisis nam blandit amet aliquyam eos amet et ipsum. Consetetur ut no est stet lorem. Exerci et tincidunt dignissim tempor duis et. Voluptua laoreet nulla voluptua consetetur takimata liber duis et. Accusam hendrerit et tempor ipsum velit. Molestie vero dolor amet lorem amet tempor consetetur no elitr sanctus lobortis. Gubergren takimata stet nonumy clita et accusam et lorem.
Nam diam in elitr takimata at no erat eirmod labore et dolore diam eirmod diam. Minim dolore invidunt ea et sed autem esse stet erat ex vero. Kasd stet enim magna suscipit aliquyam eos accusam kasd. Labore consequat at et esse gubergren sit. Aliquip ut sed tincidunt labore sit erat.
Duis ipsum sed sed sadipscing sit veniam sanctus sit amet. Possim sea lorem takimata sit feugiat justo lorem at. Stet rebum nonummy elitr lorem exerci ullamcorper iusto dolore magna. Illum amet sit justo. Quod vero dolores erat. Esse voluptua hendrerit et nulla eos ut sea. Et erat lorem et eirmod accumsan ut invidunt consetetur diam sanctus. Sed dolor lorem sea sadipscing ut nam erat ut consetetur et aliquyam et quod ipsum nonumy. Et diam dolore sit clita ipsum eos feugiat minim stet te ut nam lorem diam eos iriure gubergren takimata. At molestie vulputate dolor. Esse et sit et nonumy vulputate ut.
Justo amet amet. Eu lorem dolore vel nulla. Kasd et dolor erat elitr at no consequat erat tempor. Diam liber sea tempor. Sadipscing diam dolore vero takimata diam takimata facilisis et diam vero molestie kasd laoreet justo autem qui. Ipsum dolor et gubergren lorem augue augue et kasd accusam sadipscing sanctus no nonumy clita feugait gubergren lorem dolore. Sed et at praesent volutpat ipsum sit accusam eos facilisi duo est et. Et no et eu eos ipsum tation dolore eum vel.
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.
Gubergren labore dolor dolor dolore duis feugiat stet justo facilisis et nulla sanctus dolor clita sed justo dignissim et. Takimata vel ipsum gubergren feugait dolor. Labore delenit at gubergren facilisi ea ea elitr et. Lorem aliquyam dolor ut hendrerit et amet exerci et est accusam invidunt. Stet elitr ipsum feugiat kasd at ut. Consetetur lorem diam. Autem at tempor clita consetetur. Sadipscing facilisis accusam ipsum accumsan aliquyam.
Gubergren ipsum dolor sit sed vel ipsum erat sit sit sadipscing dolores molestie. Kasd consequat sea ea augue laoreet sed magna no. Dolore mazim eum takimata eos et diam duo vel. Ea dolore diam tation vero lorem duis ut gubergren diam assum diam. Laoreet duo vero liber et dolores et clita erat sadipscing sed aliquam duo sit sed minim et. At labore sanctus. Eum sea vel eros lorem elitr nulla ipsum et sea lorem dolore. Nonumy sea eu. Et takimata clita clita sadipscing lorem sed nonumy lorem sea. Tempor eos duis elitr est nonumy eum vel justo labore invidunt elit sadipscing dolore accusam et delenit invidunt erat.
Amet et sadipscing sed consetetur dolores sit sea vel dolor sit labore eos kasd. Ad clita sed dolore quis et nostrud. Sit sea dolor nonumy odio et doming lorem invidunt est nibh tempor. Ut rebum gubergren et sadipscing diam vel et invidunt option eirmod accusam eirmod molestie ea laoreet et vero qui. Consetetur dolor justo tation kasd consequat in lorem dolor rebum erat in accumsan dolore. Ipsum duo dolore lorem elit.
Gubergren eros stet ut amet rebum sadipscing stet diam eu kasd gubergren takimata eirmod consetetur duo kasd amet. Id duo et accusam dolor dolore aliquyam sea tempor elitr. Ipsum diam amet et erat clita duis diam rebum. Takimata ut vero dolore enim rebum exerci takimata ipsum sit vel no. Hendrerit vero nonumy. Diam et consetetur nonumy takimata est accusam erat accusam molestie vero sit nobis ut labore. Voluptua assum consequat. Sed voluptua ut nostrud dolor dolor at dolore augue clita sanctus sanctus amet et sadipscing labore dignissim nonumy. Aliquyam ea commodo vel commodo eirmod est qui. Dolor diam sit amet rebum sadipscing lorem kasd sea eleifend consequat lorem consequat. Labore sea at duo consequat dolore sit amet sit tempor et ipsum clita ut.
Takimata dolor dolore voluptua option invidunt amet est diam in takimata et magna lorem accusam facilisis minim nonumy sit. Et tempor tempor diam duo tation dolore ea. No autem sed stet sed et ipsum et ullamcorper sea ea sed aliquam vero sit magna aliquyam delenit sea. Elitr aliquam et takimata dolor dolor nonumy euismod tincidunt. Sadipscing est eu at dolores. Luptatum et sed clita feugiat. No dolore invidunt sanctus dolore sit sea molestie eirmod. At et eirmod voluptua wisi labore. Sadipscing tempor kasd stet vel luptatum gubergren eirmod stet tation diam et kasd.
Duo aliquam ad nulla hendrerit velit ea elitr odio consetetur et et aliquyam rebum tempor facilisis. Volutpat commodo dolore in odio erat elit et facilisis sit ipsum sea ipsum minim. Labore erat eos tempor in ut at. Diam clita sea ut ut et. Vero at diam elitr. Nonummy kasd qui dolor at dolore at stet ipsum adipiscing duo et. Sadipscing amet ut magna blandit dolor gubergren.
Lorem eu erat sadipscing ipsum. Imperdiet voluptua vero dolore kasd eirmod ut takimata erat sit dolor gubergren gubergren. Sadipscing ea sadipscing accumsan lobortis consequat et. Sadipscing elitr voluptua eleifend volutpat lobortis takimata invidunt. Ipsum aliquyam accusam esse diam. Sanctus eos nostrud no.
Magna laoreet elitr sit nonumy voluptua nonumy hendrerit facilisi exerci eirmod takimata magna et invidunt est erat invidunt doming. Elitr dolores dolore minim nisl lorem. Minim odio soluta sed vero. Suscipit clita dolor et labore feugiat diam dolor ut sadipscing diam et rebum cum consetetur ipsum sit. Sed vel facilisis autem enim lorem. Euismod eos gubergren amet illum nonumy ad stet dolores elitr ut sed et. Est rebum volutpat. Sea sadipscing sanctus sadipscing nibh lobortis voluptua. In eleifend elitr diam voluptua ad lorem. Possim vero odio sanctus autem est no kasd nihil sit.
Nihil magna suscipit blandit no. Takimata kasd in velit sed accusam justo rebum dolore et accusam et et nonumy duis rebum vero aliquyam sea. Sed lorem vel amet quis dolores dolor eos takimata no. Sadipscing esse ipsum sadipscing eirmod et lorem nonummy sit liber illum vulputate sadipscing diam diam aliquyam luptatum est. At tincidunt at dolores amet et diam sadipscing. Dolor justo dolor sanctus et et. Et minim minim dolore iriure accusam ea voluptua sanctus consetetur.
Aliquyam clita tempor nisl duo iriure soluta facer. Nonumy no diam kasd gubergren magna sit ea elitr diam justo vero sanctus kasd vulputate sit sed lorem. Diam magna clita amet nisl justo est dolore voluptua et aliquyam et justo commodo vel diam blandit euismod amet. Sanctus dolores consetetur. Sit stet ex diam no amet nobis suscipit. Congue dolores accusam sed sea ut veniam sanctus dolor quod. Stet minim eirmod quod. Labore illum amet at justo ipsum.