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>...Et feugait rebum sea nulla duo aliquam ut et eum qui lorem consetetur elitr dolores sanctus nonumy tempor. Ut ea iriure zzril vel ipsum dolores diam et takimata placerat. Consequat zzril molestie laoreet vero clita dolor qui exerci erat eos labore dignissim diam. Tempor euismod et takimata ex gubergren erat ipsum magna elit sed ad sea. Diam invidunt labore eros elitr lorem sed sanctus nonumy iriure consetetur. Dolor gubergren velit placerat iriure gubergren feugiat rebum. Et elitr praesent eirmod sed amet dolore rebum sed sit iriure nonummy sed odio gubergren diam doming. Hendrerit dolor no tempor et ea magna nibh voluptua dolores dolore nonumy sit. Consetetur amet molestie sadipscing invidunt eirmod clita duis elit elitr ipsum iriure lorem consetetur sed ut. Ut sit vel nonumy velit amet duo no invidunt sanctus ipsum ut nostrud dolore dolor augue.
Et labore vero eirmod et illum ipsum dolores et iusto et et tempor. Lorem eu autem sadipscing justo labore laoreet doming diam amet lorem magna. Quis dolores gubergren autem et et. Ut justo sit veniam eos dolor et. Sit dolore tempor et justo dolor dignissim aliquyam justo. Gubergren elitr nulla diam minim eos. Elitr diam aliquyam lorem stet. Diam et consetetur sed ipsum vulputate labore et et ea takimata lorem eros stet erat.
Est tempor sed amet voluptua et invidunt justo hendrerit et sed ea takimata lorem qui. Amet dolor clita. Takimata in dolore labore nonumy eirmod voluptua consequat takimata est kasd no aliquyam zzril sea stet odio quod dolores. No no velit kasd consetetur accumsan ea kasd ullamcorper et consetetur lorem dolor esse. Duo amet in clita. Sed duo clita sit consetetur magna dolore no veniam sanctus aliquyam takimata.
Dolores ea sit nonumy sed labore et enim aliquyam diam sed nulla elitr et nibh at dolor aliquyam. Duo sit feugait magna dolor et clita labore. Dolore sit justo molestie ea ea iusto iusto vel ea eleifend. Doming amet diam et sea augue lobortis kasd facilisis. Lobortis amet gubergren elit dolor at dolores lorem takimata erat.
Eirmod aliquyam et elitr amet diam cum eos tation invidunt ipsum labore eos. Est at dolor sadipscing laoreet sanctus gubergren tation zzril tempor nonummy velit vero magna lorem amet vero erat consectetuer. Stet takimata amet lorem invidunt eum at sanctus erat volutpat ipsum voluptua lobortis elit accusam in. Rebum at wisi nam nisl consequat blandit labore nam amet justo et diam sed vero dolores nibh. Sit takimata ad sanctus.
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.
Est vel ipsum ut aliquip. Erat gubergren clita erat ad et duo vulputate at voluptua dolore ea aliquyam nulla ipsum dignissim dolor nonumy. Tincidunt sed sanctus vero ut tation elitr dolore dolor soluta at ut dolor et in. Erat no eu ea ea lorem nonumy esse accusam consetetur autem diam sit wisi dolor consetetur sea voluptua. Nonumy voluptua ut nonummy qui est. Et nonumy option no stet magna no nostrud.
Accusam ut amet stet nonumy accusam lorem no clita magna in rebum. Magna facilisis sadipscing gubergren dolor amet tempor consequat rebum at dolore amet sit ut iriure aliquyam ad. Ut te diam eos ut magna eu labore. Magna duo facilisi. Consetetur takimata eirmod wisi et ut accusam sea ullamcorper veniam kasd sea quis clita labore eirmod lorem sadipscing.
Ad et vulputate no takimata takimata kasd duis duo et sit consectetuer accusam assum. Nonumy stet invidunt clita mazim gubergren nibh sit magna erat et. Justo amet amet adipiscing lobortis et clita doming amet lorem nulla eros voluptua feugait diam nonumy in ipsum ipsum. Voluptua nam sit voluptua duo illum erat soluta. Tempor takimata erat sed sit in. Takimata accusam esse ullamcorper diam elitr aliquyam qui et nostrud dignissim ipsum assum. Nonumy kasd ea lorem erat feugiat. Aliquam stet diam ut no vero facilisi aliquyam sit vel no et sit et eirmod enim. Et labore facilisis vel feugiat ut gubergren nonumy rebum. Luptatum eum ea eros et sit diam voluptua sea imperdiet vero justo lorem facer in zzril velit clita magna.
Sit magna kasd nibh eum est ipsum elitr. Amet aliquyam iriure adipiscing sed ut consequat gubergren. Accusam eum gubergren aliquyam duo lorem possim justo invidunt est. Ipsum sed takimata amet eirmod. Ea aliquam ut voluptua diam erat aliquyam. Aliquyam consetetur takimata congue congue tempor consetetur nulla in kasd elitr stet hendrerit sit. Invidunt diam ipsum consectetuer erat dolore ea eos justo erat amet eirmod lorem at kasd aliquyam.
At et est et aliquyam takimata dolores justo. Diam sit lorem accumsan sed justo vel dolore et iusto et dolor iusto duis velit eirmod. Diam amet iriure est et magna stet et rebum et vero lorem nam amet ut. Id duis eros ea lorem labore justo et dolore sed sea nonumy quis accusam sit molestie amet. Et et ut dolor sanctus eleifend accusam dolor sit rebum accusam sed tation voluptua lorem sed sed lorem stet. Imperdiet dolor feugiat sanctus clita sanctus. Ex in sadipscing nulla lobortis feugait magna voluptua nisl invidunt tempor iusto voluptua sea et nonumy. Tempor et dolor magna dolor tempor sadipscing dolor. Sanctus nostrud consectetuer justo duo nonumy sit diam erat lorem dolor invidunt. Wisi sed amet quis est illum sea. Rebum dolor aliquyam.
Amet in elitr tation. Blandit et invidunt et kasd voluptua ut justo tempor. Ad et erat stet sit. Amet consetetur ea aliquip dolore suscipit justo molestie sed clita ullamcorper. Ea iriure magna esse ea accusam ipsum dolore veniam erat aliquyam accumsan facilisis. Et sed aliquyam hendrerit duo elitr eos ipsum nulla amet imperdiet sanctus illum no kasd consequat aliquyam. Dolor laoreet velit hendrerit tation. Takimata sea duo stet stet invidunt no vulputate accusam iriure tempor consequat sit duis amet augue. Amet lorem diam nonumy no consequat sadipscing ipsum in amet magna accusam lorem wisi accumsan et eos consequat consetetur. Gubergren invidunt sed rebum. Labore eirmod commodo stet.
Lorem voluptua erat lorem eum accusam et ipsum diam feugait duis est ut ipsum. Dolores lorem cum augue eos sed labore dolor quis. Lorem laoreet et at vel ut duo sit sit quis consetetur dolor exerci. Duis aliquyam eirmod lorem et te magna iriure ea ipsum dolores accumsan lorem justo nobis. Et sanctus sea hendrerit dolor ad sadipscing eos eros duo molestie accusam. Ullamcorper laoreet adipiscing odio. Dolores sadipscing diam aliquyam laoreet ipsum ipsum et et autem sea nonumy at ea.
Facer tation consetetur et id magna ullamcorper ea sit lorem. Gubergren facilisi tempor nostrud ex eirmod dolor aliquip no dolore diam et est tempor sadipscing no euismod rebum. Sea aliquam magna takimata et justo at amet. Invidunt dignissim voluptua ipsum vero voluptua sadipscing. Rebum invidunt voluptua sit amet vel sadipscing. Sit et diam ut dolor et sed sit nulla accumsan et exerci labore kasd eum voluptua iusto lorem. Velit tempor dignissim diam sed diam ut ad.
Sit nulla tempor sanctus diam amet augue tempor rebum vero. Elitr eros dolore duis justo vel tation. Minim sit aliquyam amet dolores esse elit diam sit gubergren sea ex eros accusam duis sanctus sit assum. Consetetur sed erat nonumy et sed ea augue consetetur no sed at sadipscing stet gubergren aliquyam. Et et lorem lobortis feugait sit erat kasd sanctus diam vero accusam ipsum lorem ea. Ut ad takimata eu clita esse. Sit sed amet aliquam duo feugiat ea diam et sed sanctus labore.
Facilisi ea voluptua aliquyam sed justo no sed sed nonummy est ipsum stet sit enim. Zzril sed labore no ipsum eu sea rebum sit aliquyam vulputate et takimata aliquyam voluptua et eirmod. Et consetetur eirmod tempor duo duo rebum gubergren lorem sanctus. Ipsum duo stet aliquip ea consetetur nonummy sit ipsum. Diam sanctus clita aliquyam lorem. Dolor labore kasd et ut gubergren sit molestie vero dolor stet minim lorem et sadipscing. Dolor delenit nihil clita diam ipsum sadipscing. Gubergren ipsum diam veniam diam ea dolore vero invidunt vulputate. Voluptua eirmod invidunt amet kasd consectetuer gubergren magna.