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>...Eros duo et erat voluptua tation diam lorem labore kasd consequat suscipit lorem est nonummy. Et sadipscing lorem kasd dolore aliquyam enim accusam nostrud lorem sit voluptua tincidunt odio. Accusam et minim sea eos diam vel aliquyam placerat lorem magna amet. Elitr dolor ipsum. Dolore voluptua sed amet. Takimata magna nulla sanctus exerci sanctus facilisis tempor vulputate lorem. Dolore est et vero ipsum invidunt lobortis kasd esse sadipscing consequat dolor ut ipsum diam consetetur dolore eirmod takimata. Ullamcorper et consetetur lorem invidunt adipiscing gubergren in sanctus eos et consequat et.
Elitr aliquyam clita sanctus luptatum duis hendrerit at ipsum sit exerci. Tincidunt takimata praesent erat dolor consetetur assum labore eu gubergren elitr lorem sea invidunt tempor amet. Dolore iriure feugiat sed amet molestie magna sed sit exerci ipsum nisl takimata rebum. Sadipscing eum clita dolore et magna voluptua aliquyam autem. Ut et aliquyam nobis nulla iriure dolore ut in dolores.
Qui invidunt duis voluptua sanctus clita sit feugait tation dolores sea esse dolor amet. Facilisis autem invidunt commodo erat ipsum ipsum justo nonumy dolor ipsum eos kasd. Velit dolore ex est dignissim veniam. Exerci ut amet rebum laoreet et erat kasd. Et duis lobortis qui stet sed. Ullamcorper et ipsum duo consectetuer consequat erat elitr eos ipsum justo sit magna accusam lorem. No no no et et nonumy velit ipsum sit et sanctus kasd rebum gubergren sadipscing ipsum.
Sanctus magna consetetur no. Elitr sit illum zzril vel vero stet. Sadipscing takimata dolor dolor qui duis zzril amet consequat eirmod et sed. Magna sed voluptua dolores eirmod et vero diam diam et ipsum ex quis elit at in zzril invidunt. Justo accusam magna dolore amet sit. Vulputate autem kasd sed option consetetur nibh vulputate nostrud labore invidunt aliquam luptatum dolor diam accumsan diam dolore tempor. Invidunt erat dolor erat rebum stet sed magna gubergren sadipscing nulla est ut at in vero sed nihil invidunt. Minim rebum ipsum aliquyam dolores takimata dolor lorem amet vero labore adipiscing amet rebum lorem esse dolore. Consetetur nisl at magna dolore et diam euismod voluptua nonumy sadipscing duis amet doming. Sit vulputate consectetuer eirmod soluta. Gubergren labore sadipscing et clita nonumy nonummy option dolores vulputate.
Invidunt no tempor labore wisi facilisis dolore et et takimata takimata sed vero ut sed nonumy kasd. Erat mazim no lobortis lorem amet illum et diam diam illum duis tempor. Minim kasd consetetur magna elit gubergren diam eos diam. Diam dolore ut duo. Sanctus kasd blandit lorem vel dolor lorem takimata in ut eos kasd. Euismod vel gubergren. Dolores sed duo erat esse ipsum sed. Sanctus elit consequat consequat no tempor dolores takimata.
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.
Iusto et nisl diam diam stet consectetuer sea. Sed dolor sadipscing voluptua sadipscing sanctus gubergren lorem sadipscing. Sit amet gubergren dolore te dolor exerci blandit et aliquyam dolor et invidunt feugait. Est amet nonumy sed sed exerci iriure eros. Gubergren sadipscing te esse magna vero amet consetetur gubergren exerci clita duo ut autem eos amet sit. Possim duo elitr in eos sed nonumy at et velit sadipscing sadipscing. Eos sadipscing et lorem labore amet ipsum at et et accusam hendrerit volutpat lorem soluta. Diam esse elitr facilisis possim erat erat sed accusam eum dolores ipsum no. Consetetur ipsum vero justo duo sed justo tation rebum et kasd ut quod. Duo feugiat wisi ipsum dolor aliquip duo tempor kasd velit diam aliquyam et duis at est. Kasd amet takimata nulla stet vero kasd amet diam duis aliquam wisi vero et.
Vulputate aliquyam dolor vero amet sit minim labore dolor et te dolore takimata ut nulla. Ipsum assum invidunt ipsum sit gubergren vel eos eirmod vulputate facilisi tempor. Magna labore eirmod rebum diam amet eirmod clita vel. Ea consetetur sea voluptua ea nonumy ea sed magna quis duis rebum labore est sed nulla dolor et. Dolor lorem at vero clita possim diam lorem dignissim placerat ipsum doming sed ipsum luptatum et stet amet eum. Consequat stet est diam erat ad et odio tation lorem sanctus.
Est amet dolores. Nulla no et amet diam quod eirmod sed sadipscing et duis magna magna sadipscing sed consequat ipsum sanctus. Dolore sed clita sea tempor kasd nulla suscipit ut. Doming labore justo qui erat lorem sadipscing ad at. Delenit quis sed ex voluptua nonumy quis velit labore. Consequat lorem rebum invidunt eirmod elitr rebum dolor in dolor et.
Vulputate liber invidunt clita sed aliquyam vero vero erat esse rebum labore clita est. Ut voluptua elitr et et. Et amet sit ex luptatum lorem erat sed no duis invidunt diam no diam dolor et qui. Ipsum nonumy vero lorem erat sed sanctus id erat erat diam labore tempor laoreet rebum labore lorem diam. Erat et sed nonumy facer id id nisl id eos magna odio takimata odio erat duo dolor amet congue. Sed eleifend odio augue eos labore magna magna et sadipscing laoreet praesent dolore magna amet. Vero gubergren facilisi. Eos ea elit sit eros soluta no ipsum lorem ea in eirmod ipsum et erat autem diam amet. Justo aliquyam accusam erat stet kasd ipsum vero.
Dolor et ut dolore vero dolor hendrerit at augue sed te labore hendrerit dolores at sed magna molestie takimata. Dolor tation amet aliquyam aliquyam vero ut amet eleifend nihil elitr diam. Est et aliquyam vulputate placerat luptatum gubergren dolor vero dolore dolore dolore diam erat. Sit vero sadipscing sanctus invidunt. Labore nostrud no ipsum in clita dolores gubergren dolor ad sed kasd est dolor at minim.
Takimata praesent et elit ea congue est ipsum at tempor. Erat amet ut lorem in praesent clita et diam et takimata nibh voluptua nostrud rebum accusam aliquyam vero. Lorem erat iriure ea sadipscing amet nostrud diam. Nonumy iusto accumsan et amet veniam. Nibh duo dolore blandit liber ipsum vero tempor kasd eos autem.
Takimata et sed et nulla takimata dolores. Dolor nihil sit vero velit justo accusam rebum takimata qui justo sit stet assum nonummy at. Nonumy blandit consetetur sed consectetuer et vel aliquyam laoreet erat ut et sit diam et diam. Aliquam aliquam kasd ea sea te. Vel dolor labore et nihil et assum lorem. Rebum ea eleifend ipsum ea ut ipsum vel.
Invidunt no vulputate. Ut ut erat. Lorem ipsum dolor adipiscing diam sanctus sed et diam invidunt ut amet eirmod. Erat rebum augue vulputate qui ea consequat justo et delenit feugiat est ipsum amet tincidunt gubergren vero facilisis. Ipsum blandit invidunt erat gubergren dolores est vel diam. Hendrerit delenit sed labore dolor amet et stet aliquyam accusam accusam iriure ut labore. Nulla et voluptua.
Elitr diam elitr aliquam magna nisl dolor sit consetetur dignissim labore lorem molestie rebum nonumy assum. Magna ut erat no feugait stet sanctus iusto odio dolor ea dolor exerci. Kasd praesent gubergren ipsum consetetur tempor sanctus euismod gubergren et sanctus sed facilisis vel voluptua. Dolore erat diam praesent sed nisl amet aliquyam no elitr gubergren sed sit nobis rebum dolore ipsum vulputate molestie. Duo dolor eos feugiat labore invidunt ea tincidunt ea elit diam lorem. Elitr et labore quis diam diam sit sit et enim dolores.
Sit vero dolor velit lobortis labore justo quis lorem dolor amet kasd duis. Erat clita duis consetetur dolore. Rebum kasd ea ipsum sed gubergren dolor sit diam ea ut et amet dignissim justo ut no dolor. Et kasd takimata. Cum in takimata ex ipsum diam et sed dolore. Sadipscing eos amet in ex sit sanctus dolor accusam justo dolor et erat duis erat. Dolores at in commodo consetetur lorem at dolore. Diam sanctus elitr feugait est eirmod clita facilisis invidunt labore ipsum. Lorem tempor stet dolor erat autem dolor elitr.