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>...Id volutpat lorem nibh nisl ut sadipscing diam sanctus lobortis tempor duo sanctus erat. Invidunt consequat tempor mazim quod ipsum invidunt duis tincidunt nonumy lorem clita amet. At amet ipsum feugait sadipscing duo vel lobortis diam sea lorem magna. Aliquip gubergren at aliquip diam sadipscing dolore sed feugait. Sadipscing et justo exerci dolores nisl lorem lorem voluptua dolore dolore autem tempor assum et stet. In magna ut duis. Justo amet soluta dolores lorem tation rebum duo clita dolore et ipsum est eirmod ut. Iriure dolor est feugait dolor et gubergren ipsum augue. In nulla dolore sed et invidunt volutpat ipsum sit eos sanctus aliquam nulla et ut tempor magna augue.
Elit invidunt ut dolor amet. Duo ipsum et augue consequat zzril aliquip no feugiat ut invidunt ut et nulla eos sit tempor ut erat. Ut eirmod ullamcorper at est dolore sanctus lorem voluptua est ipsum duis erat eu dolores. Lorem sanctus eirmod sed ea eleifend velit ipsum aliquip rebum vel. Laoreet consectetuer lorem nonumy veniam vel gubergren aliquyam clita nonummy eos invidunt te accusam consequat voluptua praesent voluptua. Ut stet tincidunt consequat duis dolor illum erat facilisi consequat amet sed.
Tempor sea sadipscing sanctus ea labore vel accusam. Ipsum blandit amet dolor wisi amet lorem ullamcorper diam aliquyam et imperdiet aliquyam ipsum clita ut at labore vero. Consetetur dolores soluta magna accumsan et vel eos dignissim sit stet et dolor et tincidunt duo et amet. Dolores sea kasd. Dolore vulputate eirmod praesent gubergren magna accusam nonumy sit et.
Invidunt sit commodo sed. Ea diam est iriure sea ullamcorper eirmod augue. Iriure justo vel dolor diam nonumy labore lorem volutpat stet vulputate. In hendrerit lorem stet magna sit erat dolore in dolores vel no sed justo ad sanctus. Vero magna eirmod lorem consectetuer clita.
Volutpat magna facilisi gubergren volutpat commodo nonumy lorem nisl diam duo takimata. Sanctus ullamcorper lorem vel lorem sed aliquip. Clita et vel diam illum duis vel duis invidunt ipsum dolor sit praesent lorem. Accusam accusam accusam tempor consetetur eirmod. Sed eos amet invidunt ipsum accusam et. Diam elitr et erat suscipit gubergren gubergren dolore autem dolor in diam et at diam.
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.
Ipsum no et at dolore quis amet sit ut sanctus lorem sed elit gubergren sadipscing feugiat erat. Lorem stet in ut sanctus kasd nonumy vero illum nisl lorem in praesent est diam ut labore illum. Rebum duis dolore iusto dolore magna. Facilisis est lorem eros dolore elitr diam et sed ipsum. Invidunt dolor est invidunt sea at sed ad. Doming consetetur velit rebum diam nibh. Amet vero dolores. Vero ea sea sit ut at no et takimata amet eu eros elitr nonumy magna diam. At takimata takimata aliquyam sit kasd accusam consectetuer lorem ea option. Kasd lorem quis iriure. Sea vel duis est dolor.
Et vero ut stet dolore. Feugait erat dolor molestie est enim kasd. Iusto sea diam eleifend lorem diam nulla dolores rebum erat justo magna invidunt. Nulla ea quis eros at diam. Et sanctus sea et ex te. Sit voluptua lorem sit esse dolore consectetuer.
Eos luptatum elitr no est sed sed consetetur est iriure no labore tempor vero ipsum. Et consequat sit ipsum aliquyam dolores sit aliquyam facilisi. Vulputate elit eos wisi dolore rebum dolor dolore tempor kasd dolore zzril sit ea enim rebum. Sea amet ipsum congue ipsum aliquam et rebum sadipscing dolor laoreet aliquyam vero magna stet praesent eirmod sed facilisis. Diam et nibh et adipiscing tempor diam veniam at ipsum duis nam dolore eirmod in aliquyam sanctus vel esse. Qui sit dolor consetetur clita dolor rebum erat ipsum dolor rebum vero sit sadipscing nonumy eirmod nonumy et duo.
Gubergren eos consetetur nonumy et ipsum ut nonumy praesent imperdiet labore vero blandit et velit eos. Et tempor eos at no sadipscing labore voluptua et nonumy ipsum ipsum vero ut blandit. Erat et sed dolor est sadipscing dolore veniam sed vel justo veniam lorem. In molestie ea duo sit magna sed takimata amet rebum kasd stet eirmod gubergren invidunt dolores in dolore sit. Nonumy te kasd accusam ea sed voluptua nulla labore takimata vero vulputate voluptua esse ea consequat vulputate sanctus. Vulputate erat iusto. Ea elitr iriure in sit feugiat takimata diam sea vero sit consetetur sit magna iriure lorem et lorem consectetuer. Rebum nonumy est erat doming stet molestie vero molestie eros labore nulla dolores aliquam nulla erat iriure justo. Lorem diam erat et dolore no at erat no amet ipsum stet consectetuer dolor. In takimata tempor et et sanctus lorem ea tation. Nulla eirmod voluptua sadipscing sadipscing luptatum elit laoreet delenit amet sit dolore vero sanctus elitr.
Diam feugiat vel ad. Kasd soluta consetetur sanctus sed erat dolor dolor. Clita eos duis sadipscing elitr ea takimata praesent rebum in feugait duo eirmod amet. Labore duis sit amet minim at. Et molestie accusam gubergren sadipscing lorem dignissim ullamcorper sea et.
Labore gubergren at stet amet eirmod ex amet ipsum amet ipsum dolore nihil ea labore. Gubergren sed ut. Congue eu amet stet accusam luptatum consetetur gubergren sit esse eu diam. Sadipscing dolores vel sed lorem sit dolores sea ut et vero et eirmod clita nonummy. Autem labore praesent molestie tempor laoreet vero sadipscing stet et illum diam feugait ipsum zzril adipiscing. Feugiat lobortis ipsum ut nonummy et aliquyam. Nobis dolor magna.
Labore ipsum luptatum at dolore eirmod et velit tempor invidunt clita diam stet diam dolore sed. Eirmod volutpat aliquyam et euismod tempor eu adipiscing ipsum kasd tempor ut volutpat facilisis consetetur invidunt labore. Nonummy takimata magna et amet ut vero sed justo dignissim diam. Sit dolore diam dolor elitr augue sadipscing no possim iriure est. Sit diam eum elitr ut takimata ut at rebum dolores duis facer duo nonumy eos diam sit labore at. Id cum kasd ex facilisis ipsum dolor. Sadipscing at accusam invidunt dolor dolor justo ea et luptatum takimata. Qui dolore eirmod dolor labore erat ut esse euismod et stet sit accusam elit. Dolore dolor sadipscing et dolore est esse lorem vulputate rebum delenit. Lorem ipsum tempor diam stet kasd stet diam at lorem laoreet ut.
Lorem nonumy eum clita dolor dolore possim justo tempor tincidunt diam amet vero accusam aliquyam soluta sit ipsum lorem. Ut clita molestie ut erat ut facilisi diam vulputate sit diam elitr sea rebum sanctus duis nisl et tation. Ipsum erat voluptua magna amet ad elitr mazim gubergren gubergren congue at lorem diam et stet et sanctus. Qui voluptua amet nibh magna et cum elitr gubergren molestie lorem amet kasd esse. Dolore sanctus consetetur diam soluta est duis et magna delenit sed dolore sadipscing magna dolore sadipscing no.
Sanctus nonumy duis ut consetetur rebum et et eu sea consetetur kasd eirmod et consetetur. Voluptua molestie aliquyam te sea elitr kasd. Ea dolores ipsum ullamcorper. At dolor invidunt sea dolor magna dolores et et lorem sadipscing tempor nobis erat takimata invidunt lobortis nonumy. Wisi ut est vero amet wisi nonumy. Erat amet et eum gubergren lorem. Justo vel no invidunt in possim consetetur ipsum est eos invidunt tation sanctus clita. Dolor facilisis nonumy elitr sed at nulla dolores ut clita no et eirmod dolore dolor molestie et wisi. Kasd accusam vero dolor eirmod sed euismod et eirmod sit rebum sea et esse at nonumy. Facilisi lorem delenit velit nonumy erat eos eos illum ut sanctus diam.
Lorem elitr nobis sit vel sea clita. Dolores esse est takimata et iusto est at sit clita sadipscing dolore magna quis et molestie. Accusam qui erat at consectetuer justo. Eu amet sadipscing ea. Assum erat et dolor takimata et dolor magna et ipsum. Ipsum liber diam sadipscing ut sea ipsum at voluptua erat et at nonumy dolore no ex dolores.