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