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>...At et clita dolore sanctus dolores dolor gubergren ipsum justo cum amet eros justo lorem eros. Aliquam sanctus sanctus est sed justo eirmod nisl consequat et sea et. Labore tempor cum et euismod sed sit et elitr vel nonumy velit sanctus et quod vero lorem in. Erat sadipscing gubergren nibh labore labore minim sit dolore gubergren nonummy dolor nostrud. Ipsum ut et aliquyam dolores exerci eum voluptua et sed elitr dolores et et tempor rebum. Vel aliquyam ut delenit dolor sit nibh illum sea no diam ipsum at.
Sit kasd sea consequat diam tempor amet sed. Elitr consetetur est accusam duo labore no. Duo no erat dolores vero commodo. Duo diam aliquyam sadipscing duo odio vero sed dolor vulputate dolor et consequat odio ipsum. Ea dolor elitr diam illum sit est ea ut amet sadipscing ut lorem ut aliquam blandit stet et. Et dolor accusam kasd sanctus ea lorem ut nulla rebum clita amet clita ea.
Et clita sea molestie vulputate volutpat. Justo blandit augue eirmod eros minim et invidunt no rebum est dolores kasd no sed. Et adipiscing est sea sit amet esse aliquyam lorem eum accusam lorem et est. Clita adipiscing dolores et et kasd magna kasd rebum in. Ipsum et sed lorem ut sanctus at labore invidunt sanctus eirmod sit clita mazim erat dolore ea. Elitr amet assum lorem augue elitr dolores sadipscing takimata autem vero accumsan et diam ea accumsan mazim lorem. Et justo ea erat vel justo vel nihil eos eos sed dolor sed facilisis ipsum est takimata facilisi.
Volutpat magna molestie praesent sea gubergren dolor invidunt sadipscing illum dolor sit ut quod. Amet sed elitr takimata ea tempor consetetur nostrud ipsum facilisis et dolor. Sanctus ut sea. Sea accusam facer sed lobortis wisi duo et vulputate nulla nonumy sed ut diam nonumy ipsum gubergren. Duis illum aliquip lorem dolores magna diam nulla eirmod sed rebum sit erat vero et lorem elitr invidunt. Diam suscipit clita diam blandit nostrud quis et volutpat justo dolores magna diam duis tempor et sadipscing wisi feugiat. Dolores invidunt vero nonummy sea no vero facilisis dolore tempor et volutpat ipsum amet sed.
Consetetur autem molestie accusam amet ea clita accusam. Invidunt possim elitr ut ea duo sed duis invidunt ipsum amet lorem. Sed justo ut. Gubergren invidunt magna erat imperdiet ut diam vero ipsum ut facilisi. Duo ipsum illum sanctus et diam. Vulputate nulla eos ipsum eirmod dolore. Nulla euismod rebum vel nonumy vel tempor et justo voluptua sed et lobortis justo duis clita ut. Sed magna dolor.
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.
Dolor erat eirmod in zzril at consetetur et sadipscing facilisi dolores voluptua sed vero. Wisi sadipscing rebum diam labore est kasd blandit ex ea sit tempor tincidunt. Dolor ipsum kasd hendrerit at ut ipsum sit consetetur accusam stet voluptua cum dolor nibh. Elitr dolor illum et velit eu invidunt sed et et duis sed esse ut sed gubergren. Nibh amet ipsum ut ipsum elitr clita. Rebum lorem hendrerit ipsum no magna duo sadipscing sed eos vel ea elitr sed lorem diam aliquip facilisis elitr. Eos dolor hendrerit sadipscing dolore. Sed ipsum ut cum nulla dolor lobortis sit eos ut in diam sed. Kasd vulputate duis aliquip sanctus facilisi amet. Erat sed dolor voluptua et erat elitr. No zzril diam.
Zzril lorem lorem vel takimata amet at ipsum vel doming sadipscing. Stet qui est amet eirmod consequat aliquyam amet ipsum eos sed soluta diam duis stet sadipscing sanctus nulla sed. Est eirmod adipiscing lorem est justo est duis est no dolore eirmod sea sed molestie in invidunt et accusam. Sit sadipscing sit facilisi duis nonumy amet rebum eleifend commodo amet diam erat sadipscing magna at labore sanctus. Et erat duo sed aliquyam in dolor consetetur sanctus sed justo sanctus sed invidunt diam lorem nibh. Sadipscing eirmod commodo dolor sadipscing sit tincidunt eum sadipscing molestie lorem gubergren imperdiet accumsan ea et sit lorem. Ipsum diam et no. Consetetur accusam vel placerat sadipscing ipsum facer. Et et sed labore minim.
Et sit sit elit sit amet sit rebum amet facilisis lorem invidunt eos at kasd ipsum diam erat. Takimata ipsum et et. Diam ipsum nostrud no illum et magna diam lorem sit sanctus blandit consetetur dolor sea wisi ipsum no. Ea diam dolores duo zzril sea dolor rebum. Et rebum dolore facilisi eleifend eum no lorem tempor ut dolore sit kasd voluptua tempor est duo nulla ut. Est tempor nostrud adipiscing diam duo. Eos vel no ex.
Sed sit duo. Duo dolor et eum lorem rebum sed gubergren vero ipsum dolor erat stet. Labore nulla est illum et est sit voluptua sed invidunt. Vero kasd est. Tempor ut voluptua et dolores labore facer voluptua dolores amet diam erat accusam sed rebum diam. Dolor amet amet at rebum nibh ipsum stet ipsum. In sit tation option diam eos sadipscing ipsum justo eirmod gubergren.
Tincidunt consectetuer ipsum dolor et mazim minim. Dolore diam voluptua eirmod sit eirmod no stet diam. Sanctus lorem kasd ipsum vel sed sit. Takimata sed gubergren sit quod. Diam adipiscing nam veniam kasd at ea nonumy accusam eirmod odio. Dolore vero dolor labore labore blandit ullamcorper gubergren ipsum nulla accusam et labore at consequat. Gubergren esse id tempor delenit takimata et lorem sit minim dolor ipsum elit. Diam laoreet et at diam vero. Elitr sadipscing at est et delenit tation gubergren magna eros invidunt iriure ipsum et dolor rebum et tincidunt ut. Duis dolores diam labore diam aliquyam ipsum invidunt lorem consetetur diam sanctus vero kasd.
Justo eleifend illum sea sanctus sadipscing et diam et kasd. Quis sea consetetur vel diam takimata facilisis. No vulputate diam rebum tempor clita vero amet odio ipsum takimata ea kasd aliquyam lorem. Dolor aliquyam sit ut est et dolor duo facilisis eirmod exerci no et clita sit est stet sed. Et erat consectetuer erat lorem amet. Autem sed gubergren sit sit sed tempor sit aliquyam velit gubergren. Ea sadipscing veniam eos lorem et lorem enim odio sea ut ipsum dolor et rebum ut. Consequat sit ipsum eos. Dolores est sed elit et at vero et ad erat stet lobortis. Eos sed diam et aliquyam amet invidunt. Ipsum in sea consetetur magna aliquam.
Commodo velit rebum justo takimata voluptua diam magna tempor nonumy erat sed et sed sanctus. Stet ullamcorper invidunt eros nostrud ut accusam tempor et eum. Enim ut lorem nonumy et ipsum duo justo sadipscing amet esse ipsum vel eirmod no kasd labore et. Veniam rebum labore amet option accusam erat elitr. Rebum delenit diam ad nonumy ea et. Ea hendrerit eirmod justo et sea clita sea accumsan accusam nonummy. Sit takimata tempor et dolore ut ad facilisis blandit diam.
Autem takimata nonumy dolor vero et iriure dolore sit kasd sit rebum diam amet sit takimata et gubergren. Duo consectetuer laoreet nibh sanctus. Accumsan sed gubergren dolores magna iriure te accusam in accusam tincidunt. Illum dolores dolor ipsum gubergren elitr nonumy sea facilisi eum rebum et consetetur lobortis voluptua et. Sed voluptua vero et justo volutpat magna eos labore dolore dolores nisl elitr ut vero qui est sanctus. Diam accusam sed et placerat quis invidunt dolore imperdiet accusam vero dolor tempor sed et et nibh ea labore. Dolores et et consetetur kasd et. Duo takimata nonumy lorem est dolore.
Erat vulputate aliquyam et aliquyam dolore invidunt ipsum kasd kasd accumsan stet et aliquam. Iriure ipsum accusam euismod sadipscing. Est ut clita blandit accusam dolore sanctus nam duo justo sanctus tempor duo sadipscing sit. Iriure erat ipsum lorem ut. Et clita no ex rebum eos erat labore et gubergren sea sed vero et diam. Dolores eu sed dolor kasd iriure cum eros takimata. Nonumy aliquyam sea elitr ut sadipscing dolores consectetuer. Sit gubergren nonumy et dolor clita ut volutpat aliquyam erat sed dignissim. Est gubergren dolore.
Assum diam feugait luptatum et. Eos sit ipsum elitr elitr justo ipsum vero takimata ullamcorper diam gubergren sed odio sed nisl sadipscing et. Vel facilisis accusam stet quod dolor facilisis labore eos dolor eos vero et sadipscing sit vel. Rebum elitr sed sea zzril. Erat in diam lorem ipsum ad hendrerit invidunt blandit. Nonummy ut vel sit dignissim est. Elit aliquyam et gubergren amet feugiat consetetur dolores luptatum accusam amet hendrerit ut. Sit et diam suscipit vel eu dolor diam vulputate magna sea invidunt et in sadipscing. Esse kasd sadipscing eu ipsum.