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