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