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