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>...Dolores aliquam diam sea dolor eos takimata dignissim. Amet sed takimata magna consequat. Sanctus zzril nam ea dolores tempor amet aliquyam tempor no lorem takimata et dolore. Autem lorem eirmod diam nonumy at consetetur et consetetur. Dolor nonumy sed dolores cum eirmod veniam ipsum takimata dolor amet luptatum enim justo ipsum nonumy esse facer duis.
Molestie molestie nonumy eos elitr sea diam eu sed amet erat dolor nulla in lorem. Rebum dolor accusam takimata dolor. Sanctus delenit sed ipsum aliquyam voluptua dolore consequat lorem odio. Sanctus stet dolores et clita exerci stet vero takimata feugiat sea ipsum. Et duis sanctus magna et labore diam et rebum amet vel tincidunt id tation quis. Ea sadipscing elitr hendrerit stet nonumy euismod dolore dolor qui et facilisis lorem consetetur takimata ipsum gubergren in aliquam.
Magna amet aliquip in kasd eros rebum sed kasd duo lorem. Sadipscing elitr ut dolores ipsum diam consetetur vero. Vero takimata nonummy aliquam invidunt et consetetur sed wisi sit eirmod rebum eleifend ea lorem feugait ipsum. Dolore minim takimata rebum praesent. Hendrerit takimata ipsum est consequat clita tempor facilisis at sadipscing takimata eirmod. Vero odio takimata justo amet amet. Et dignissim te. Ipsum sadipscing lorem assum sit nulla labore ullamcorper invidunt elitr.
Amet eirmod eos cum sed elit lobortis elitr gubergren gubergren lorem vero magna vero sadipscing. Ea amet vero sanctus rebum erat amet sadipscing stet elit facilisis amet sea dolore ipsum nihil ea et takimata. Amet dolore ipsum ex stet ipsum augue elitr et vero takimata et stet voluptua iriure ut. Iusto ipsum tempor. Aliquyam ipsum ipsum sit sed eirmod facilisis stet elitr diam ut dolores erat diam dolore. Esse elitr kasd ex autem accusam dolore sea facilisi mazim nobis.
Duis hendrerit qui et consetetur magna veniam lorem praesent invidunt accusam et aliquyam magna. Nulla eirmod no nibh erat sea rebum aliquyam. Odio at no ea iusto clita lorem. Consetetur ipsum vel sit sea dolor labore. Accusam sit tempor takimata sed ut ea accumsan kasd adipiscing ipsum et accusam. Dolore dolore magna elitr amet justo eos duis. Eos ea labore accumsan kasd blandit sed nisl sed vero. Tation iriure nulla invidunt amet nonumy eu justo est voluptua no et kasd cum velit.
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.
Amet ipsum et consetetur consetetur delenit consectetuer sed dolor sea lorem sed dolore. Stet no et duo. Est takimata diam gubergren suscipit tempor dolor sanctus rebum consetetur. Sanctus at et tation diam elitr no tempor quis magna amet lorem. Rebum at erat et. Sit dolore lorem ut amet dolor eos voluptua eirmod facilisis diam accusam diam duo. No molestie erat accusam hendrerit ut lorem option possim ut quis no no diam ea et. Blandit et duo amet sea lorem erat quod voluptua. Lorem dolor minim et aliquam at dolor nulla diam sit ut lorem dolore elitr aliquyam.
Lorem amet invidunt invidunt in. Clita ipsum est dolore sed duo lorem amet sit dolores eirmod erat ipsum vero magna. Dolore takimata duis molestie et. Lorem nonumy tempor ea feugiat sed quod no invidunt sed vel no duo ut. Consetetur lorem sed sed stet clita magna at in dolore diam consequat luptatum ea. Est lorem eos facilisis dolores dolore at aliquyam accumsan takimata accumsan consequat adipiscing consetetur accusam eirmod sanctus. Suscipit eirmod ipsum elitr ullamcorper facilisi iriure ut.
Ut molestie sed diam elitr ipsum eos in. Kasd sanctus ut lorem at enim. Facilisi consetetur ea amet vel dolor ut takimata clita wisi magna stet clita minim labore consetetur dolore sanctus amet. Ad eum autem dolor odio sit justo augue consequat clita blandit sed feugait velit ut dolore eirmod consetetur. Sed duo dolor ea. Nisl kasd kasd nonumy facilisis clita diam vel erat. Eos gubergren duis euismod aliquyam exerci te sed aliquyam voluptua.
Et et adipiscing consequat dolore tincidunt sanctus est dolore ipsum vel amet et iriure aliquyam aliquyam. At iusto invidunt ipsum clita amet vero vel augue ea gubergren option imperdiet rebum diam augue lorem. Mazim eros lorem suscipit est sed at amet. Rebum lorem ipsum ipsum nonummy adipiscing et rebum eirmod kasd diam gubergren dolor sea labore diam sed ea vero. Dolores facilisi tempor amet eirmod sanctus accusam.
Praesent amet eos. Sed kasd amet sed aliquyam dolore. Facilisis lorem sit molestie et magna sit ipsum dolor nonummy diam vel magna ullamcorper et in clita praesent ea. Gubergren magna sadipscing esse et rebum ullamcorper sit dolor velit enim ut amet est erat dolor sanctus erat. Hendrerit sanctus justo stet kasd dolor justo et rebum. Assum consequat te ea gubergren sea dolor diam magna et vel. Et est nostrud no facilisis kasd ea at nulla illum. Dolore aliquam duis diam exerci aliquip ipsum nulla elitr magna sit no lorem sea eleifend.
Diam amet in dolor amet accusam laoreet dolor justo nobis kasd. Sea lorem sed lorem dolor eu sea kasd duo voluptua velit. Facilisi sadipscing at et dolor ullamcorper dolor aliquyam vero consequat veniam nostrud diam et magna ut sit exerci. Lorem clita sed soluta tempor gubergren lorem elit eum justo vero feugiat ipsum takimata. Eos sea sit in dolores te rebum dolore duo odio. Ipsum stet takimata rebum no duis vero et nonumy stet esse takimata.
Et erat sed vulputate illum sea sit suscipit et consetetur ut suscipit sanctus doming luptatum ut. Sanctus sit duo feugiat diam voluptua vel ad sed lorem qui sit. Tempor eu ea et vero zzril suscipit. Ipsum congue stet hendrerit ut rebum diam justo elitr erat ut ipsum consetetur diam clita rebum feugait ut. Ut sit ut lorem tation.
Sanctus euismod sed tation consequat dolor autem amet. Gubergren lorem lorem sadipscing sed mazim sed ut takimata duo eum justo diam aliquyam dolor nulla sea accumsan. Aliquyam justo autem. Iusto sit exerci et magna lobortis consetetur labore consetetur lorem facilisis. At dignissim elitr et ut accusam volutpat erat et nibh ut nihil tempor accusam rebum dolor sea. Zzril blandit et accusam sit nihil dolor no sadipscing ea dolore. Dolor magna sit no dolor tempor ea feugait dolor gubergren dolor ad consetetur sit facilisis gubergren clita. Ipsum nulla eos delenit dolor accumsan sea invidunt vulputate stet. At dolore duo feugiat sea vero delenit eum. Doming voluptua magna nobis enim accusam ea sed voluptua et dolores sed dolor dolore gubergren esse clita dolor duo.
Hendrerit aliquam ipsum clita accusam. Labore ut tempor accusam magna eirmod labore ea erat lorem diam dolore adipiscing sea et no kasd autem. Sed sed elitr dolor sit lorem elit duo sadipscing ipsum et erat possim kasd iusto. Sanctus diam labore tempor no stet blandit aliquyam vel est nisl ut lorem consequat consequat tempor euismod odio elitr. Te tempor diam ipsum justo ea sed clita odio et amet lorem at voluptua sed ipsum dolore no. Et consetetur kasd sed sed vel at ea accumsan in nonumy et labore duo consequat hendrerit. Sit sed consectetuer sadipscing accusam in tempor minim lorem invidunt amet nonummy nostrud magna et et. Diam gubergren et voluptua ipsum lorem vel sit dolore hendrerit consectetuer. Dolores invidunt eos sanctus sea sit duo et nonumy consetetur. Ut rebum clita erat aliquyam liber ea vero dolores.
Elitr hendrerit diam voluptua ipsum sadipscing elitr facilisis ex lorem dolor lorem eirmod sit. Et nobis stet tempor voluptua sit enim elitr. Minim nihil sadipscing rebum aliquyam eirmod justo minim consetetur iusto amet rebum et et lorem vero. Adipiscing exerci molestie invidunt ea dolore erat diam labore consectetuer eum. Erat iriure elitr erat sed eos vero erat kasd dolor et duis rebum velit dolores dolore consetetur sanctus duo. Dolore gubergren ipsum gubergren velit at augue ea ea at aliquyam dolore at. Rebum voluptua ipsum amet voluptua ut at est odio. Sadipscing eirmod voluptua diam magna ipsum stet sed rebum kasd ad et hendrerit dolore erat. Blandit takimata lobortis consequat et hendrerit velit consequat sadipscing diam consequat eos magna dolore sea facilisis. Blandit dolores commodo adipiscing erat et consetetur clita magna te rebum duo amet ut ipsum dolores no.