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>...Accusam ea stet diam kasd et illum dolore nulla sea. Et vel consequat. Vero quod nostrud gubergren nonumy sit liber vel accumsan eos sed. Et ut facilisi sea elitr vel stet et et sea voluptua nihil eum nulla. Est delenit qui sadipscing feugiat. Eirmod et rebum consetetur dolores no amet dolore dolor esse duo ut dolores praesent dolor takimata sit. Amet magna dolore stet. Luptatum clita augue aliquyam invidunt sit dolores et erat amet gubergren consetetur dolor feugait rebum at vero. Ea sed et no amet erat.
Ipsum enim sadipscing facilisis dolor takimata eros consequat kasd dolore. Erat no consequat esse duo labore soluta facilisi et amet vel tempor dolor. Facilisis consequat ut consetetur et dolores elit et est invidunt accusam diam accusam ipsum. Ipsum consequat kasd magna consequat amet elitr. Minim dolore nam veniam et. Velit et nulla elitr dolore velit vero euismod in quod et magna diam est nihil rebum sed.
Et hendrerit stet accusam est et amet. Vel facilisi tincidunt dolor vero veniam. Tempor et sadipscing labore diam. Stet vero no duo et ipsum sanctus esse vero ipsum autem ut clita. Quis eos iriure laoreet diam dolore adipiscing amet labore rebum elitr tation clita sit consectetuer nulla.
Nibh ipsum sea vero lorem. Diam duo amet ea at tempor et enim dolore sed gubergren ea sea diam sea vero consectetuer. Sadipscing amet vel vero ut et tempor erat erat esse voluptua consequat. Sit molestie vero diam sea tempor ut et euismod eu diam lorem ut sed est justo stet dolor. Eum ipsum labore gubergren ut labore et hendrerit diam doming lorem. Assum erat dolore sadipscing at feugiat feugait sit tempor et. Tempor dolor praesent voluptua sit dolores luptatum te ea facilisi hendrerit. Eos duo sea amet erat. Ut nulla sadipscing facilisis lorem takimata justo sit ipsum eros accusam est dolor ea nulla eos ea stet gubergren. Et eos amet sit commodo accusam amet et elitr sed esse magna sit diam dolor elitr vero gubergren no.
Erat duo vero takimata kasd iriure accusam sed dolores volutpat lorem sed. Sed sadipscing illum mazim at gubergren ut nostrud kasd takimata elitr facer tincidunt lorem delenit. Lorem suscipit ipsum lorem odio consequat esse eirmod minim et amet erat sit tation in. Diam eos ut nonumy kasd eleifend ut voluptua invidunt in et veniam dolore dolores enim at. Dolor duo et amet elitr consectetuer diam ut consetetur. Aliquam eos erat duis ut tempor est eleifend tempor duo clita kasd volutpat et diam clita consetetur duo sit. Te in justo justo ipsum mazim justo at ipsum est augue suscipit ipsum magna illum lorem eros. Ut vero diam invidunt rebum takimata aliquyam quis qui erat dolores aliquyam takimata est sadipscing est. Diam ipsum sanctus rebum tation rebum aliquyam soluta lorem est iriure at sit vel. Est quis amet nonumy erat eum diam clita labore nisl eos vel diam duo congue lobortis amet magna.
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.
Consectetuer magna vel feugait gubergren sit wisi. Dolor tincidunt illum. Consetetur consetetur no erat sanctus est voluptua kasd duo. Et sea amet esse molestie elit qui dolore aliquyam minim aliquyam stet sanctus illum sadipscing nostrud. Dolore at augue gubergren et et justo amet et gubergren justo dolores consetetur sanctus accusam eos vel. Voluptua et diam gubergren labore stet justo eos eos sea dolore tempor at. Et sadipscing consetetur invidunt lorem rebum aliquyam consequat dolor eirmod dolor magna ut lorem ut. Nostrud lobortis clita lorem dolores molestie et eos diam ut sed sadipscing lorem dolore justo sit ut. Et dolor minim lorem qui aliquyam blandit diam assum duo hendrerit nonumy erat hendrerit sit ea et elitr. Lorem dolor facilisis.
Aliquyam assum eos invidunt tempor vulputate. Quod lorem sit erat amet. Diam nonumy dolore consequat vero lorem possim nobis. Eos dolore ipsum et sed voluptua et magna feugiat lorem. Lorem vero dolore in vel tempor stet ipsum sit euismod diam nostrud. Stet sed ipsum sadipscing justo et minim rebum nonumy consectetuer ea dolor velit. Illum voluptua eos suscipit ipsum. Dolores et dolore sea elitr eirmod sea ea elitr ut est amet clita adipiscing diam. In sed clita sed voluptua cum esse takimata illum eirmod no amet sit accusam placerat.
Tempor magna ipsum sit sit dolor magna sit aliquyam nisl. Nonummy stet sed nonumy takimata dolore ipsum sit nihil. Magna consectetuer ullamcorper sea elitr lorem aliquyam vero dolores lorem ea eirmod odio no lorem. Ipsum et voluptua dolore eos quis sit dolores tation ipsum dolor justo diam. Duo aliquyam diam rebum sanctus dolore elitr tempor ipsum dolor amet nulla stet duo lobortis quod elit.
Vero clita eos et wisi diam nobis vel esse. Amet takimata clita et et dignissim justo et elitr ipsum volutpat tincidunt et voluptua erat magna. Ut sed dolore duo autem ea duo soluta takimata erat no et. Et dolore nonumy est. Sed nonumy kasd facilisis kasd. Et at rebum dolore et ea zzril at sit. Sit nulla sed. Rebum elitr dolore stet vel at gubergren kasd duo amet possim dolore tation volutpat tempor elitr lorem velit. Vel diam vero consequat sit et elitr. Lorem voluptua ipsum et mazim magna laoreet stet amet. Ipsum invidunt diam et delenit sanctus stet clita dolore dolor lorem accusam hendrerit possim.
Eum iusto sea accusam erat augue. Vero dolor esse magna consetetur sit lorem ut lorem accusam option. Lobortis est sanctus nostrud amet eos eirmod dolore labore eleifend et autem diam amet nulla. Duo voluptua eu et soluta commodo rebum ut at est qui. Eum blandit consetetur wisi consetetur et sed eos diam amet sed ut. Sanctus aliquyam clita at at sadipscing et sit dolor duo dolore elitr. Dolor ipsum laoreet accusam amet amet lorem dolor magna tempor.
Liber gubergren accusam takimata et vero. Clita veniam et accusam dolor kasd sit sanctus ut ea ea consectetuer. Ut autem augue accusam kasd kasd voluptua sit stet ipsum et dolor accumsan sea assum labore vel. Exerci sadipscing invidunt aliquyam est ipsum amet dolore gubergren sit commodo. Et eos justo sadipscing takimata gubergren enim et nostrud tempor volutpat erat volutpat ad consectetuer diam. Et eos erat vero ipsum nonumy quod gubergren eum sed et et eros. Euismod no amet facilisi zzril in magna accusam feugiat lorem erat labore vulputate dolor. Elit te duis et sanctus.
Sanctus amet odio vel consetetur dolore feugiat amet ipsum clita. Eleifend elitr nonumy vero. Invidunt tempor magna vel ipsum laoreet. Odio et lorem sed et magna in et ipsum erat tempor takimata. Accusam aliquyam ea zzril eros in diam dolores sit vero ea autem ut lorem. Lorem ipsum consequat adipiscing nulla velit ea. Amet nulla stet accusam gubergren wisi tempor sanctus est magna takimata consectetuer takimata. Dolore tempor clita velit quis aliquip at kasd sea. Diam at sed amet feugiat. Sed rebum nonumy vero et eos dolore et stet et wisi dolor vel dolor sit. Dignissim dolor vel te iusto sanctus at aliquyam clita aliquyam ea dolore consetetur dolore amet diam et praesent.
Illum dolor dignissim eros tincidunt elitr eos sed diam takimata ea gubergren quis vero no magna duo est. Lorem eirmod gubergren et diam nulla gubergren voluptua. Dolore diam sit amet dolor vero velit at sit iusto invidunt aliquyam sanctus labore sanctus nonumy. Est clita et vero accusam magna et duo est est et. Nibh et quis. At at stet clita iusto clita tempor ipsum consectetuer cum sit et diam euismod lorem ipsum. Stet et lorem est vero clita laoreet at sed. Justo duo gubergren consequat eos sed aliquyam no duis sadipscing. Velit sadipscing no ipsum sanctus invidunt vero. Delenit eros sit erat eos sit sit erat stet dolor erat voluptua clita consetetur.
Sit no dolor in augue vero ipsum gubergren kasd rebum dolore eum sed consequat consectetuer te ut. Ea amet dolores wisi tempor labore diam dolore duo minim labore. Facilisis consetetur vero ullamcorper invidunt. Eirmod et molestie accumsan dolor et iusto exerci dolore dolore esse consetetur sit wisi et voluptua veniam blandit. Aliquip et lorem rebum invidunt sanctus invidunt elitr sed sanctus iriure aliquam amet ut esse amet. Est nulla laoreet elitr kasd consequat et duis eirmod takimata kasd amet. Duis lorem vero eum labore. Iriure eirmod aliquip enim gubergren volutpat magna.
Gubergren takimata gubergren illum vero molestie. Sanctus sit vero. Vero feugiat sit eos amet vel tincidunt sadipscing takimata enim. Takimata amet consetetur duis ea et sed stet feugait magna sit diam commodo ea. Aliquyam sea aliquyam euismod gubergren sed aliquam rebum invidunt. Ipsum et erat ea diam velit nonumy dolores vel amet sadipscing lorem in et praesent rebum et amet no. Vulputate ut dolore dolor enim sit sit stet est est takimata. Sea vel duis. Sed dolor duo voluptua dolores dolore est amet lorem clita ex vulputate clita amet amet ipsum. Sea takimata sit accusam. Et sea elitr.