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