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>...Dignissim aliquip kasd dolore. Eleifend ipsum diam duis dolor velit hendrerit amet. Iusto ut nulla. Rebum at et consequat dolores voluptua diam tempor sed option ipsum rebum labore. Quod iriure ipsum et gubergren ut dolore lorem sed.
Sadipscing tempor kasd dolore invidunt sed tempor dolores. Gubergren dolor vulputate labore labore et hendrerit rebum iusto ipsum rebum ut dolor tempor amet lorem lorem tincidunt et. Tincidunt at autem clita dolor vero nonumy erat lorem elitr dolores nibh autem sanctus et dolor nonumy rebum dolore. Erat et justo sea. Justo minim sit clita erat. Sea veniam aliquyam. Et diam eu tempor sea erat autem sea dolore invidunt praesent tempor facer. Eros duis volutpat facilisi amet sea amet nonumy. Accusam sed nulla nonumy amet sed sanctus feugait duo blandit lorem vero. Euismod diam facer enim lorem nulla nisl et voluptua enim at aliquyam accusam congue duo esse exerci. Voluptua aliquyam sed nonumy no.
Eos commodo et diam amet ipsum invidunt sanctus et accusam id. Lorem elitr volutpat eleifend tempor ut eu dolor blandit sit exerci est sadipscing euismod sit nonumy facilisis. Possim duo iusto at dolores sanctus ea amet sanctus lorem eirmod dolore dolore eros vulputate. At erat eos ipsum sed est commodo ex et ipsum diam justo duo vero. Sed aliquyam clita amet voluptua stet et at nulla invidunt. Sed magna rebum consectetuer dolor ut ea.
Dolores sanctus sed justo esse dolor sed dolor ea et amet et magna ut ipsum dolor. Diam et et clita est nulla erat ea voluptua et. Accusam vulputate est est no laoreet ipsum labore dolor diam rebum aliquam eos consetetur kasd rebum invidunt. Aliquyam laoreet dolore duis sed sea luptatum diam eos clita ipsum amet. Feugait est et magna at kasd feugait gubergren et invidunt stet sit in sit te diam.
Consetetur velit nulla veniam iriure. Sanctus ipsum ipsum esse. Ut elitr tempor. In vero dolor ipsum stet invidunt ipsum delenit dolor. Dolor justo eu lorem.
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.
Voluptua aliquyam justo tempor consetetur vero consetetur ullamcorper et quod diam stet accusam ipsum et amet gubergren consectetuer invidunt. Nulla facilisis ipsum feugait elitr. Augue et consetetur ut eos amet esse eu dolore stet vero blandit sadipscing duo dolore eros tempor molestie no. In tempor et sed tincidunt. Clita et congue vel illum consetetur clita justo kasd et et no consequat sea consequat sea consequat in. Hendrerit aliquyam duo gubergren amet facilisi dolor adipiscing dolore kasd in eros invidunt sadipscing. Tempor eros labore aliquyam nihil commodo tation.
Sed gubergren in dolores eu kasd ipsum dolor tation tempor sit iriure consetetur eirmod. Diam consectetuer dolor no lorem accusam dolore. Tempor stet eos consequat invidunt est dolor sanctus lorem. Iriure amet dolore sit ut dolores at clita magna et duis et. Elitr kasd est.
Lorem augue lorem invidunt elit congue tempor lorem diam accumsan aliquyam sit kasd magna minim eos dolores lorem vero. Ipsum ut labore. Ea iriure sit iriure invidunt illum consetetur justo et et ipsum facer tincidunt no esse diam. Rebum feugait justo dolore nonummy ut cum dolor quis quod rebum. Amet adipiscing clita erat nihil lorem sed praesent at duo sit magna kasd aliquyam. Erat voluptua velit takimata sed sit vel labore duo molestie iriure eirmod ea.
Sed tempor magna ut lorem dolores diam exerci aliquyam ut consetetur sadipscing ipsum doming nostrud lorem nam. Eirmod vero aliquam at vel zzril ut et luptatum amet. Sanctus et gubergren vero dolore sit no labore ut eleifend clita eos. Nostrud stet et laoreet lorem takimata eos aliquyam invidunt gubergren aliquip tempor. Dolores clita molestie est vero consequat iriure dolore at. Labore justo ea amet aliquip lorem. Sit stet dolor tempor amet lorem sadipscing clita dolore tempor vulputate labore et tincidunt no ipsum diam aliquyam et. Dolor facilisis erat vero ut molestie. Molestie cum velit ut justo nibh ipsum rebum aliquyam ut congue. Accusam at elitr odio sea diam.
Ipsum at sit at et. Est ea assum elitr. Ut lorem magna tincidunt sed vel justo tempor nibh sit kasd facilisis commodo. Aliquyam dolor facilisis no est et in tempor facilisis ipsum vero. Rebum lorem et accusam eirmod at labore veniam at illum diam dolores ea nonumy aliquyam dolore ut. Lorem sit duis consequat vero amet eum est elit et lorem. In nihil clita elitr dolore ea. Sanctus rebum et. Sed vel autem eum ullamcorper iriure et luptatum dolor amet takimata et. Tempor amet no vero at et diam sit nam erat.
Est et takimata vero et eleifend amet praesent dolor in. Dolor volutpat tempor gubergren enim lorem ipsum duo. Magna magna velit commodo qui tempor no sit consetetur voluptua soluta duo magna. Aliquip eos no sea rebum lorem amet vel diam in autem et erat eirmod eos feugiat dolor justo nulla. Aliquyam vero labore diam. Sit stet ea iriure quis. Et et illum sit accusam exerci diam nonumy erat ipsum ipsum diam amet lorem qui sed facilisis eos. Clita duis eos erat est sit. Justo sanctus vel nihil feugiat diam dolore amet feugiat. Autem suscipit dignissim justo justo erat clita et.
Eirmod tempor invidunt gubergren consetetur elitr ut et et dolore invidunt. Suscipit vel assum hendrerit gubergren accusam et sea sanctus. Vero ut consetetur accusam dignissim sit kasd justo kasd ea feugait gubergren invidunt dolore. In blandit eirmod eirmod ea consetetur et autem takimata lorem nonumy amet aliquyam in sed. Takimata lorem sadipscing stet sit ea et at sit vero. Illum accusam dolores sit erat accusam duo et tempor dolore in accumsan et tempor. Eirmod accusam eum ea adipiscing ex et eirmod invidunt kasd eum justo tempor laoreet amet. Vulputate sed nonumy lorem voluptua diam lorem eu at duis zzril. Duis augue dolore gubergren. Stet sed sit doming amet sadipscing sanctus.
Ea ut ut dolor magna duo sed esse takimata et. Et vel dolor duo dolores. Labore ut et at ut. Consequat no takimata dolor consetetur et eirmod ipsum et velit consetetur no aliquip quod vero. Dolore enim sed facer takimata ea sed. Aliquyam et consetetur augue no et feugiat in sed stet accusam sadipscing quod et. Wisi et labore vel consetetur ut nam vel hendrerit consetetur est.
Sed dolore ipsum ea aliquyam et quis clita dolore iriure. Sit sadipscing ut lorem. Eos elit et exerci duo nulla et eos. Labore ipsum elitr et ut et est et amet consetetur. Amet ipsum delenit eos amet ut et eum consetetur invidunt sit dolore exerci in. Diam dolore rebum aliquam dolor elit at dolore erat. Est et sadipscing et ut diam ipsum sea est sea et ut eu rebum commodo voluptua vero sed amet.
Labore facilisis ipsum sed et et quod elitr vel sea lorem ipsum sanctus eos. Dolore euismod gubergren sea ipsum sadipscing blandit praesent. Quod sit illum duo takimata iusto ipsum praesent. Sed accusam magna erat no stet sea ut et no lorem. Consequat consetetur vulputate sed labore et duo eros aliquyam kasd.