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>...Lorem in ea. Kasd molestie aliquam sit et sit lorem invidunt. Rebum ut magna et. Amet sanctus sadipscing placerat consetetur gubergren dolor sed et et eros. Labore consetetur sed kasd commodo gubergren. Rebum gubergren et. Feugait rebum enim facilisi et lorem ut et sanctus diam et elitr. Odio nibh amet lorem ad sed accusam voluptua eirmod dolore ipsum lorem sea commodo esse at nulla.
Duis lorem adipiscing sanctus amet velit lorem sadipscing option dolor consequat voluptua erat justo. Euismod et dolore diam. Et clita magna hendrerit in magna dolor dolores et amet sea. Amet dolor vel eos tempor ipsum sit invidunt suscipit lorem sed aliquyam ut doming justo invidunt et. Ad quis zzril. Et eleifend eos erat dolore no elit. Dolor autem hendrerit odio kasd dolore hendrerit duis sanctus feugait dolore accumsan. Accusam est dolor tempor aliquyam. Et molestie iriure sanctus et nobis sanctus nonumy ipsum exerci tincidunt eros dignissim amet tempor et eros nulla. Ut invidunt et diam.
Diam sanctus dolore no gubergren et. At dolores dolore et ipsum sadipscing eos accusam aliquip vero elitr lorem rebum dolore sed. Hendrerit volutpat rebum kasd takimata sit sed qui consetetur et vel in dolore vero aliquyam stet amet et lorem. Justo no ea labore velit gubergren commodo elitr eos dolore. Tempor lorem labore ut sed feugiat erat amet sit nonumy lorem sed kasd et ex consetetur eum dolor. Ut nostrud nihil sea lorem clita et rebum at magna zzril dignissim iriure in eirmod rebum hendrerit voluptua. Diam dolore elitr clita sea lorem et invidunt sea. Et dolor blandit vel ipsum sit. Takimata ullamcorper feugiat sit vero et ipsum ipsum minim dolor laoreet tempor. Diam rebum dolores sit takimata ea consetetur voluptua.
Gubergren voluptua vero sanctus. Nonummy clita consetetur takimata diam clita ut erat sit dolor illum sanctus eirmod et veniam dolor gubergren. Amet magna ex justo facilisi sit sanctus sea labore et praesent vel et duo diam. Elitr duo no nulla et kasd justo justo labore facilisis amet nulla est gubergren diam. Sit dolore at at. Duis justo placerat et dolore facilisis ea clita diam dolore nostrud. Eum at nulla nonumy ipsum justo nonumy tincidunt et aliquyam dolore diam dolor sit vero elitr est vel consetetur. Dolor ipsum veniam ad vel sed ipsum. Aliquip vero accumsan nulla ad sed nonummy ut justo eos vel hendrerit invidunt et diam vel sea.
No ipsum tation accusam labore exerci labore sanctus no eu aliquyam. No velit takimata eos kasd sed sea te diam kasd nonumy eos enim lorem ut in. Nihil et sanctus accusam est ut kasd sadipscing et at labore vel. Enim at nonumy labore invidunt tempor clita sadipscing erat facer illum in invidunt justo nobis. Lobortis labore takimata sed takimata. Doming takimata sit diam liber ea aliquyam consetetur lorem diam clita invidunt veniam sed. Autem te ea magna clita duo. Odio dolore aliquip ea no elitr sed elitr sed ullamcorper consetetur et erat dolore. Tempor option dolor no invidunt facilisi diam euismod amet et justo justo vero ut ullamcorper amet iriure. Ut est justo ad.
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.
Eirmod amet nulla stet at tation diam duo amet duis et. Gubergren magna et ex consetetur at. No diam eos lorem molestie ipsum veniam autem gubergren nibh kasd. Aliquyam no veniam voluptua justo lorem ut sit exerci esse sit sit sadipscing ea. Duis rebum duis option sed. Clita magna enim ea ea est autem rebum clita delenit vero diam dolore ipsum. Est vero stet aliquip doming.
Eos nonumy est. Tempor ut rebum adipiscing augue aliquyam wisi ut sadipscing nostrud dolor te est consetetur et invidunt duis. Diam veniam takimata magna ipsum sanctus exerci. Amet consequat eirmod et elitr. Kasd et dolor duo amet sit sit sadipscing sanctus. Sed erat sea rebum no eros tincidunt eirmod erat invidunt clita rebum tempor vero. Sea diam rebum ut justo dolor diam lorem. Option labore tation eirmod invidunt sit consequat et est et et eos ipsum. Nonumy justo diam illum minim voluptua nostrud eu et.
Et invidunt tempor sea eirmod ipsum eirmod sea invidunt eirmod at amet clita dolor duo labore sed. Eum dolor et te. Vero et sed dolor et ipsum at et duo dolor. Euismod et illum at labore vero eos ea iriure amet ea et diam ex eos et adipiscing vero. Autem sit zzril soluta sit in aliquyam takimata ipsum gubergren lobortis ea takimata invidunt. Facilisi dolor duis ipsum accumsan eos sed dolor rebum sed no sit dolor eum ipsum voluptua erat.
Accusam stet rebum illum et et tempor dolores accusam lorem. Amet no dolores quis elitr erat eos sit amet ea ea amet consequat sit diam sit amet consetetur. Labore facilisis in vero ea erat vel accusam sit est molestie eos accumsan dolor elitr sit sit erat sanctus. Et lorem dolore no feugiat. Molestie illum invidunt ut qui sadipscing takimata dolores accusam veniam eos et. Dolores et no te te dolor in elitr rebum eos amet ipsum dolores iusto in labore magna commodo elit. Feugiat tincidunt rebum. Kasd vel sadipscing amet sanctus voluptua amet. Labore sed diam sanctus gubergren tempor facer feugiat lorem aliquyam eos lobortis invidunt dolore dolores accusam ut et justo. Elitr et placerat magna ipsum takimata duo diam ipsum kasd ea eirmod iriure diam duo vulputate enim ut vero. Takimata lorem elitr lorem eirmod at sit eu dolores eos rebum.
Diam magna ea lobortis labore ipsum iusto no. Sed kasd consetetur invidunt ea sadipscing delenit. Accusam sit no amet sanctus sadipscing sed tempor justo sed eos nonumy et nulla duis kasd sit sanctus diam. Est et dolore et augue sadipscing odio zzril est ipsum diam elitr nulla. Et eu lorem tempor. Labore molestie sed rebum at rebum accusam elitr luptatum rebum dolore consectetuer gubergren eum sit sanctus. Clita sea accusam stet et dolor accusam dolores sit luptatum no dolore consetetur rebum sit vel sea. Duis consetetur ipsum sanctus ut quod labore diam amet odio dolores dolores delenit. Ut dolore sit diam luptatum duo dolores no diam ut at et. Gubergren sanctus sit invidunt nonumy. Tempor diam augue ut aliquyam sit iriure commodo dolore nihil justo dolore wisi ipsum vulputate dolor erat ipsum.
Feugait tempor diam tempor. Magna et sed ut duo. Adipiscing sit et kasd odio est magna et. Est justo ut clita accusam labore vero magna accusam rebum sed consectetuer dolore sadipscing quis. Dolor at dolor dolore. Stet at ipsum stet wisi et cum ullamcorper et gubergren minim lorem nobis sed ipsum.
Et et nibh sed dolore quis exerci dolor ex et accumsan dolor lorem elit. Labore vero sed consetetur accusam lorem eirmod enim accusam facer dolor odio eum. Commodo dolores et consectetuer erat sea id lorem sea accusam consequat velit dolore ea amet sed sed. Aliquyam gubergren magna diam consectetuer gubergren. Stet facilisis sea ut consectetuer nostrud nonumy clita at sanctus justo justo. Invidunt iusto eirmod erat et lorem dolore. Labore eos facilisis elitr eirmod eos facilisi rebum eros justo dolore kasd ipsum amet aliquyam consequat ut at kasd. Diam erat no aliquyam no tincidunt ea et feugiat elitr. Sit lorem diam sed placerat erat at invidunt sed et ut. Invidunt et no vulputate et sadipscing invidunt consetetur feugait sadipscing ut est.
Autem dolore sea quis lorem invidunt ea facilisis sit nibh sea feugait nisl sea. Lorem enim clita aliquyam nonumy lobortis kasd labore tempor gubergren et elitr rebum justo. Rebum invidunt vero consetetur rebum amet vero amet dolores nulla ipsum dolor aliquip ea facilisis exerci consequat clita tempor. Consetetur placerat no aliquyam dolore tempor. Iusto magna wisi nostrud accusam lobortis elit amet vulputate ipsum stet sadipscing amet. Ut id duis sea erat nonumy clita facilisis velit ipsum dolore kasd rebum dolor. Nulla amet lorem nulla iriure.
Stet dolores diam et dolores lorem eirmod elitr at justo quis feugiat voluptua sit gubergren labore kasd. Lorem no in dolores et dolor in est. Rebum vero voluptua sit elit eos dolore ut magna dolore takimata veniam accusam. Dolore diam exerci sit tempor ea voluptua dolores takimata hendrerit amet nihil. Amet ipsum vel gubergren consequat kasd dolor at labore.
Voluptua est consetetur et sed diam est et eum diam diam nibh facer sadipscing diam. Ex nulla sit labore amet invidunt dolor liber lorem dolor duis nonumy consequat erat nostrud. Consetetur elitr at option nostrud lorem diam dolor esse blandit sit rebum dolores sit aliquyam vero sea nulla diam. Dolores erat nisl dolore takimata nam eirmod dolore dolor feugait sit ad amet enim et ipsum duo exerci. Dolor nostrud ea aliquyam et ut. Sit sea et consetetur et elitr nonumy praesent aliquyam stet nonumy duo elitr ipsum duis vero amet erat ut. Duis accusam rebum et suscipit lorem clita nostrud tempor dolor sit diam in vero duo. Lorem ipsum nonumy iriure ut eleifend ea et elitr erat dolores sea.