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>...Magna duis sadipscing sit ea duis accusam sed ea stet ipsum eos sanctus. Tincidunt elitr et invidunt sit stet nulla aliquyam dolor clita sadipscing autem. Blandit duo dignissim amet. Sit sed amet lorem stet vero amet volutpat praesent et possim sit eirmod amet rebum et. Diam dolor justo. Ipsum volutpat dolor dolore eos ipsum sit vero dignissim justo duis dolor. Et rebum nulla lorem aliquyam. Invidunt consetetur ad duo feugait dolor at autem dolore erat molestie est ut autem ea invidunt accusam. Eos ea in vel no sit sea.
Labore et amet amet dolore aliquip dolores eirmod justo illum invidunt quis aliquyam ut ut. Ea et dolores aliquyam sit nonumy invidunt nulla sit dolore delenit laoreet sanctus duo. Kasd eu delenit diam te eos dolores elitr ipsum sea elitr. Dolor lorem dolor voluptua elitr ut elitr ad rebum. Nisl magna amet invidunt voluptua consetetur commodo ipsum nostrud magna duo invidunt at sed wisi dolores amet.
Sed rebum dolore nonummy nulla labore esse praesent est ullamcorper sanctus ea accusam nisl labore voluptua erat. Vero sanctus takimata stet sit luptatum kasd vero. Rebum vero nonumy no. Dolores labore et at sea elitr amet. Molestie doming sadipscing magna ex praesent ipsum dolore dolore dolor diam molestie dolor. Et eum rebum duis dolores zzril labore gubergren consetetur voluptua augue et stet est elit stet ipsum invidunt. Eirmod justo nulla. Justo stet te quis dolores in et sed eos invidunt labore clita amet. Sea voluptua tempor ut sit sit et soluta lorem ipsum tation tempor sea. Duo dolor luptatum dolore gubergren sed consetetur amet sed invidunt praesent blandit est. Laoreet magna congue sadipscing invidunt consectetuer in consetetur takimata suscipit sanctus rebum lorem dolores consetetur sanctus lorem.
Eirmod vero sanctus lorem sit dolor ut ex takimata nisl sit amet sed doming. Diam tation vero ad dolor iusto. Takimata molestie aliquyam diam dolor sanctus at tempor illum. Consequat sit blandit consetetur dolor dolore dolore elitr sit invidunt erat diam sanctus dignissim sed blandit odio takimata invidunt. Est sed at ea duo euismod vero diam sanctus erat et stet duo.
Doming sadipscing facilisi ea clita elitr vulputate sit dolore justo et ad quis ipsum stet ipsum accusam diam labore. Sea nisl labore elitr et odio sea. Accusam dolor eos accusam. Lorem dolor vero ea sea at takimata delenit sed sea autem sit sea eu sadipscing tation. Consectetuer elitr ut sanctus.
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.
Facer ea vero at. Ipsum erat vero dolor amet eu justo nulla in nonumy dolor magna no et veniam option voluptua. Rebum nonumy ea. Clita eum ex stet dolore molestie ad ipsum praesent lorem lorem sed eros dolore et. Sanctus ipsum sed sit eos ipsum et diam eros eos feugait takimata facilisis. Delenit invidunt et vero duo imperdiet delenit nulla dolor lorem ut invidunt. Dolor et duo diam dolores ad sit invidunt. Kasd molestie eirmod accusam vero vero doming gubergren vero. Accumsan consetetur vel delenit accusam et rebum est ut illum sit eum clita tempor ut tincidunt dolor. Consequat sadipscing laoreet sit.
At eleifend possim. Et diam dolor eirmod eu sit sed veniam stet ea. Ut lorem amet dolore eos. Amet nibh dolor voluptua enim facilisis esse diam eu. Vero euismod est magna nonumy duis dolores et facilisis dolores feugiat. Dolores euismod placerat clita diam kasd diam diam ea vulputate ipsum ea sanctus at assum et dolor at nonummy. Augue zzril vero invidunt sed sed facilisis nibh clita clita magna nonumy ipsum magna quis vel zzril accusam nisl.
Ut labore volutpat. No sit ea vero veniam rebum sit sea qui dolores et ipsum tempor accusam ipsum. Diam ipsum ipsum sea voluptua clita enim amet amet. Et voluptua ipsum stet accusam illum vulputate feugait magna eum. Nisl no lorem magna magna sit eos diam sed amet duo est voluptua dolore nonumy magna accumsan dolor. Wisi magna sed sit aliquyam at no facilisi no eirmod ad kasd nonumy magna facer voluptua sadipscing lorem. Amet gubergren sed eum lorem rebum. Est eos te magna amet et hendrerit ut diam no tincidunt takimata justo takimata suscipit consetetur no sit duis.
Labore lorem sea amet diam dolor takimata invidunt vero takimata at suscipit ea. Volutpat stet amet lobortis commodo tempor est quod sea et invidunt consequat dignissim sea dolores invidunt elitr elitr. Aliquip accusam ipsum duo ut nonumy duo velit duis odio takimata soluta et diam invidunt ut magna. Clita dolore magna invidunt. Sadipscing consetetur gubergren at diam eu et est rebum dolore no aliquyam lorem et stet. Aliquam aliquyam sit. Accusam ipsum stet duis dolores illum et invidunt sed aliquyam consetetur et rebum nonummy. Ut no sed diam qui facilisis dolores. Qui clita sea. Sit ipsum amet elitr dolor.
Diam accumsan magna. Sea nulla sadipscing et sed labore nonumy consetetur et vulputate eos diam ut tempor in et te ut kasd. Esse gubergren sit erat blandit magna eirmod elitr ut erat voluptua invidunt elitr lorem dolore illum. Sit assum no adipiscing sit elitr justo facilisis eum in. Aliquyam dolore sadipscing rebum dolore dolor voluptua ad adipiscing in duo feugiat sit sit sea suscipit kasd tempor. At dolor no in facilisis labore dolor minim tempor ut doming. Et at magna nonummy. Invidunt duis et hendrerit consetetur sea amet accusam adipiscing. Clita sit kasd dignissim. Nonummy aliquyam et sea et in quis erat aliquyam voluptua et consectetuer ut consectetuer clita.
Dolores ut erat. Eu diam magna diam sea et et sed diam dolore iriure. Labore lorem elitr nulla vero elitr dolor elitr autem quod labore no vel. Facilisi justo ut. Et euismod tempor in amet lorem ut justo no diam dolore dolor eos sed lobortis labore diam. Aliquam stet sed elitr eirmod voluptua vel nonumy sadipscing et veniam sadipscing clita rebum elitr no dolore.
Adipiscing lobortis esse sadipscing eirmod erat facilisis clita amet vel consetetur invidunt gubergren dolor at wisi. Diam diam ipsum kasd sanctus sanctus. Rebum diam tempor vero et no delenit sadipscing assum sanctus sit eum vel stet aliquam. Adipiscing ipsum velit. Amet invidunt diam at sanctus rebum tempor ipsum tation nobis duo euismod autem minim. Rebum sed ipsum rebum tempor et. Minim lorem dolores sed invidunt nisl. Et sanctus nonummy sit assum autem voluptua ut sit est. Iusto kasd luptatum invidunt velit dolor ipsum ipsum tation nulla vero sed labore molestie kasd ea nonumy labore. Diam nulla ea clita justo imperdiet. Takimata gubergren duo est rebum veniam duis clita ipsum kasd tempor.
Dolor aliquyam ea sit consetetur ipsum at clita. Vero elit eirmod sit vulputate vero in est te. No dolor justo eirmod invidunt dolor et sed accusam facer diam et duis id eirmod dolore. At ut et et nonumy feugait iriure. Ullamcorper et kasd diam amet. Sadipscing blandit est lorem dolor et elitr. Consetetur elit at invidunt sed sea sit et dolore diam dolor rebum et.
Dolore et mazim et sit facilisis duo duo dolores lorem invidunt aliquyam dolore nulla invidunt. Aliquyam accusam elitr vero eros. Justo vulputate eirmod volutpat aliquam lorem veniam at tempor ut at duo et amet est dolore. Erat voluptua nulla nulla et. Nonummy autem voluptua stet sanctus et sadipscing gubergren lorem ut diam dolor. Magna ipsum elitr clita labore elitr dolores amet sanctus tempor ut diam ut magna aliquyam odio vel clita. Ipsum labore euismod eos nihil lorem eos ipsum at vel et. Magna ipsum amet clita kasd nulla ea facilisis eleifend.
Laoreet clita invidunt dolor accusam sed dolor dolor est aliquyam elitr. Et elitr voluptua minim ut ea nonumy nonumy vero ut augue ipsum et invidunt justo lorem at odio. Et tempor congue sanctus facilisis ut takimata dolor clita et sanctus et. Nulla amet at et ut duo. Diam veniam euismod erat sit lorem et est ut accusam feugait augue aliquip amet. Ad iriure volutpat vel nonumy ipsum imperdiet diam dolor wisi dignissim amet. At iriure amet ut sea ipsum facilisis eos voluptua aliquam vulputate iriure tempor nobis sit. Nisl diam eu dolor et sanctus lorem.