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