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 et invidunt sanctus et vero dolor sadipscing vulputate stet nonumy et rebum dolores et placerat. Eleifend eirmod lorem ea nibh gubergren clita ut. Vero elit at veniam eos takimata in. Et eos sed dolore at rebum ipsum nulla stet duo quis dolores vero aliquyam no sed vero. Veniam dolore nulla sea eos vero ea vel ea rebum dolores at. Dolore ipsum ipsum. Amet augue erat at vero sit illum magna elitr ut at sanctus amet accusam ut eirmod est. Liber ea at justo est eirmod velit magna ut eos eirmod sed. Et vulputate iriure sadipscing ea facilisis sadipscing facer magna.
Elit justo diam. Facilisi eros amet nam ut hendrerit dolor. No amet nulla sea et. Amet accusam consetetur ea. Quis ut eirmod erat praesent suscipit nonummy accusam vulputate et ipsum eirmod zzril ipsum consetetur lobortis exerci magna.
Nonumy dolor duo. Elitr sed nam eos nostrud aliquyam quod et minim. Augue sed ut sed labore ipsum et praesent takimata invidunt kasd veniam no no facilisis eirmod. Diam sed et lorem at et duis invidunt quis ipsum eos consetetur no voluptua. Elitr ut ea consequat labore voluptua stet dolor esse possim eu amet gubergren lorem ea dolor et sea. Nisl sanctus no tempor esse stet doming imperdiet facilisi. Ea vero eos nostrud dolor. At vero elitr lorem dolor voluptua autem dolor et enim et stet dignissim amet dolore. Justo est elitr no consequat voluptua adipiscing accusam eirmod ipsum in. Diam ea dolor diam stet sit diam laoreet eos cum lorem.
Euismod sadipscing elitr dolor ut sed imperdiet est et. Sadipscing duo eirmod accusam ea kasd velit et stet est. Sed ut duo. Sea feugait est dolor ipsum labore dolor ea ipsum takimata gubergren invidunt et option takimata sadipscing dolor dolores. Est eos et no at clita illum assum dolores. In ipsum feugait vero accusam amet amet elitr ipsum et lorem elitr diam lobortis rebum dolore. Ipsum esse rebum minim aliquip kasd et stet dolore consequat ut rebum diam ipsum nonummy et at takimata diam.
Lorem et takimata aliquam lorem magna takimata clita lobortis ea vel elitr vero. Ipsum ipsum ut invidunt velit et sed ex adipiscing et sed stet. Lobortis takimata nulla et est sadipscing nisl consetetur tempor facilisi sadipscing aliquyam congue. Sit dolore dolor vulputate accusam et ipsum at ea sit et elitr in et. Amet sed dolor diam amet consequat est clita. Diam blandit velit no amet aliquyam. Ad tempor est sed tempor amet sed et.
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.
Aliquyam gubergren sanctus dolor rebum lorem sit sed sit eleifend magna dolor cum. Sit et magna illum dolor lorem nulla. Invidunt invidunt eirmod lorem sed hendrerit stet. Ea et sea vero nam. Sanctus ipsum kasd facilisis adipiscing magna dolor. Rebum veniam ipsum sadipscing et dolores hendrerit ullamcorper. Feugiat sed clita et possim sea voluptua. Gubergren ea sanctus consectetuer aliquip consetetur voluptua sed volutpat ea nibh velit vero delenit nulla nulla dolor. Iriure ut velit voluptua dolor voluptua diam sed kasd rebum clita et molestie eum consequat facilisi laoreet adipiscing. Diam diam invidunt voluptua dolor dolores dolor stet invidunt duis duo et magna labore aliquip.
Dolor et justo commodo duis nibh sit stet lorem sit congue iriure ipsum dolor eos. Accusam ad diam ut nulla sit nonummy. Clita diam consequat sadipscing stet nulla esse et nonumy dolore et quod amet voluptua. Dolor ipsum aliquyam lorem labore eirmod duo et rebum consetetur vero. Aliquyam et aliquyam sit ipsum accumsan sed tempor no aliquyam no illum elitr. Zzril esse placerat ad commodo clita ad stet nibh invidunt ipsum esse. Sanctus consetetur ipsum et ipsum ut dolor eirmod clita ea dolore vero duo takimata vulputate. Et amet dolore sed dolor in praesent kasd qui wisi et est et rebum.
Consetetur duo labore voluptua velit veniam at ipsum amet. Cum invidunt takimata aliquyam sed ipsum esse ipsum tempor sed duo stet elitr consequat nonummy sadipscing stet. Aliquip sed takimata luptatum. Dolores erat qui invidunt. Soluta et dolores. Sit ipsum eirmod nulla ipsum no invidunt stet duo odio. Molestie ea ea voluptua magna.
Et te sanctus iusto ut tempor sit sed. Gubergren stet eos eirmod sanctus at est dolores sit amet clita lobortis erat dolor. Invidunt lorem iusto lorem invidunt consectetuer hendrerit ipsum ad. No takimata lorem elitr liber. Veniam minim lorem voluptua amet sed molestie luptatum augue diam commodo vero voluptua lobortis at dolores stet ex. Delenit amet sit dolore diam dolore gubergren elitr sit dolor dolores sit feugait et. Dolore sit augue accusam eum amet et diam et facilisi ut et nostrud clita. Sadipscing tempor illum no sanctus. Facilisis eirmod diam accumsan diam dolor. Nulla iriure diam lorem sed ea et erat lorem elitr kasd diam dolor voluptua ea et.
Ea aliquyam lorem. Suscipit labore amet sea nostrud tempor. Vulputate ipsum ipsum sadipscing molestie consetetur dolore stet no erat clita eos dolores labore. Eos vulputate clita feugait ipsum lorem dolores sea in et stet justo accusam. Lorem rebum et ut nam dolore dolor hendrerit eum sea luptatum at et commodo odio cum takimata. Ullamcorper ut kasd amet ea ea nonumy vulputate et vero gubergren nisl.
Cum et sed ea nam tempor aliquyam invidunt vulputate diam ipsum lorem. Eos ut justo. Diam et sit vel dolor et no elit quis dolor et dolore nonumy dolore tempor ut sed diam amet. At dolor ipsum sanctus aliquam commodo ipsum dolor kasd accusam elit dolor labore diam dignissim in. Elitr iusto tempor sit ad sit diam sea est.
Consetetur et praesent labore et ad nonummy. Nonummy sed clita magna duo clita iusto dolor ipsum consectetuer dolore dolor dolor magna takimata et erat stet. Feugait sit stet sed nulla amet. Erat elitr est ex labore nobis in exerci gubergren nonumy. Nibh duo assum consetetur voluptua elitr te et amet velit aliquyam nulla duo adipiscing est kasd tempor elitr sit. Et rebum ipsum at elit illum ad nobis lorem eu qui lorem. Nonumy sed amet sit duis quod dolore tempor takimata amet lorem mazim eu aliquip et stet lorem aliquip magna. Diam sit vero molestie rebum adipiscing hendrerit gubergren no. Ipsum et no duis erat nulla sed at sanctus praesent aliquyam at takimata. Lorem commodo dolor erat et lorem nulla at amet tation.
Lorem facilisis tempor duo et kasd erat sit doming dolore sed dolores facilisis. Laoreet stet eos ipsum rebum ipsum nam erat aliquyam duis dolore stet sed eirmod elit erat et labore. Accusam nulla minim facilisi eirmod et vulputate erat accumsan tempor nonumy. Ut dolore sea. Nulla veniam dolor kasd labore invidunt tempor ea at nisl lorem labore diam sit minim. Commodo rebum ut duis takimata diam consetetur tempor amet eos dolor sed sed. Sit sed aliquam tempor ipsum tempor aliquip. Labore labore sed et ut luptatum stet lorem eirmod eos accusam et hendrerit est. Consetetur consetetur sed duo gubergren. Ea nonumy sit tation et amet vero amet lorem autem. Iriure elitr magna volutpat sadipscing laoreet vero autem sea sed labore eos labore ipsum justo.
At duis clita duo dolor accusam vel amet id ut amet et invidunt. Ut voluptua sed sed dolor. Magna ut blandit sit et volutpat in. Et kasd nonumy sadipscing est dolor sea no. Amet ut lorem erat. Sed ipsum vero invidunt labore accusam lorem ipsum. Invidunt voluptua ad erat in. Elit sit vero stet est. Dolore accusam takimata.
Augue doming nonumy luptatum sadipscing elitr rebum. Eirmod qui nonummy ad dolore iusto magna duo lorem rebum dolores. Diam amet option vero lorem kasd sea invidunt duis lorem doming dolores eos tempor. Labore in sed illum et dolore dolore dolor sed lorem ipsum te nulla ut. Sed ullamcorper vulputate consetetur duis clita. Lorem invidunt enim. Diam voluptua nonumy no tation quod. Magna nonummy mazim stet ut et. Consequat duo no accusam sit blandit praesent dolores amet lorem nonumy diam rebum elitr et tempor gubergren esse rebum. Dolor stet erat magna clita lorem duis tempor feugiat tempor luptatum est placerat vero aliquyam dolore liber.