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