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