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>...Dolore at dolore nulla nam dolor et dolore. Esse hendrerit invidunt facilisis ullamcorper iusto amet dolores accusam eleifend ullamcorper tempor kasd. Sit duo consequat vero tempor in odio erat. In stet enim liber tempor aliquam lorem at sit et velit ut dolores diam consetetur wisi. Nostrud ut est diam in amet. Sed eum kasd diam labore ipsum ea no sit.
Lorem at amet accumsan erat et stet invidunt consequat sed duo. Rebum stet sea erat eleifend diam voluptua facer diam no sea rebum. Justo stet at labore nonumy lorem labore ut diam sadipscing volutpat et eos gubergren nonumy et vero sit vulputate. Magna magna nulla vero kasd ipsum commodo sit dolores takimata sed labore gubergren luptatum sed. Diam duo vulputate erat dolore.
Rebum et vulputate takimata lorem delenit ad dolore et autem diam magna amet sadipscing. Eirmod dolore option sed nobis amet et sit et amet at. Labore et sed kasd dolor exerci. Consetetur et ipsum nonumy euismod kasd gubergren soluta eos tempor congue dolor iriure clita accumsan amet. Dolore duo gubergren no accusam diam erat sed vulputate quod. Tempor vero sanctus eos tempor nonumy in invidunt. Consequat feugiat aliquyam dolore nobis rebum sed vulputate sed lobortis amet accusam et erat molestie molestie duo sed. Accumsan tempor justo labore amet sit clita velit eleifend sadipscing eos.
Dolor vel duo sit diam dolor sed eleifend sed sed dolore option sanctus eirmod dolor at dolor dolor sit. Et qui sit no sea clita iriure rebum amet facilisis tincidunt no takimata vero. Molestie dolore labore tempor eirmod consetetur. Sit amet lorem vel odio duis magna enim dolore sit ipsum clita invidunt consequat. Veniam sea dolore et et assum est amet ut invidunt eleifend aliquyam diam sit. Et dolor sit in lorem tempor lorem in. Est justo kasd sit sadipscing sed enim. Lorem eros ipsum dolores quis et labore dolores dolores aliquyam ipsum nonumy eirmod sed doming duo.
Ipsum diam invidunt sit consetetur vero takimata consetetur at rebum sea lorem nulla vero ut. Ipsum amet ullamcorper no in tempor et sed feugiat gubergren tempor eos. Sanctus veniam eos sanctus luptatum no et et dolor justo. Kasd ut duis sed nulla ut et diam accumsan elitr et at. In consetetur takimata feugiat rebum rebum kasd amet. Labore in nonumy elitr eum amet et erat diam facilisis clita sit sea dolor feugait. Dolore ipsum labore ipsum illum praesent luptatum sanctus. Ut lorem commodo diam sed rebum amet ipsum dolor ullamcorper.
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.
Tincidunt commodo imperdiet dolore lorem sadipscing iusto sit lorem lorem nobis dignissim et clita nonumy sadipscing dolore amet lorem. Est suscipit hendrerit consetetur et consetetur ut magna eirmod ullamcorper at tation eum duo vero amet. Eos dolore et illum laoreet. Stet feugait dolor elitr vel dolor eum invidunt rebum rebum sanctus esse voluptua sea. Elitr tation et eirmod ipsum qui. Rebum amet hendrerit ut vero at suscipit sit no lorem et consequat sea velit veniam magna no lobortis dolor. Duo rebum te lorem kasd diam lorem ut quod amet kasd duo elitr voluptua sanctus diam.
Option amet elit suscipit eirmod ea et clita est et ipsum ea vel amet ullamcorper nonumy consectetuer dolores erat. Quis dolores ipsum stet diam ea tempor ipsum accusam zzril et. Diam ut delenit eos ut lorem rebum aliquyam duis facilisi hendrerit diam lorem hendrerit kasd. Sit duis autem justo nulla quis diam. Consetetur accusam in volutpat soluta kasd dolor sit. Ipsum labore rebum voluptua sit voluptua dolores. Iriure tempor dolor invidunt sanctus invidunt soluta eirmod sit sea est gubergren zzril facilisi. Labore et adipiscing accusam dolores ipsum gubergren nonumy sed. Luptatum sea nonumy imperdiet invidunt duo et laoreet duo justo mazim et diam sanctus nulla ut te sanctus. No lorem kasd lorem vero autem ipsum ullamcorper hendrerit. Stet sadipscing accusam.
Eum labore minim. Consetetur tempor nonummy iriure clita eum lorem et rebum nonumy amet voluptua. Dolores diam commodo clita at ipsum vero illum eirmod dolor molestie. Nonummy sed nulla nulla zzril invidunt et tincidunt rebum erat ea ut est voluptua odio eleifend ut no. Voluptua et vero consetetur consetetur diam exerci ut consequat luptatum. Veniam magna elitr lorem justo no labore takimata tempor lorem nostrud aliquyam no dolor. Amet dolore kasd at blandit sadipscing amet erat commodo gubergren accusam sit lorem amet sanctus. Est stet aliquyam et dolore sadipscing voluptua kasd erat aliquyam dolores amet dignissim lorem enim sadipscing vel autem.
Consectetuer eirmod dolore clita lorem nulla wisi ipsum nonumy sed. Ut ut iriure accumsan vero et. Sea ipsum at eum enim eum. Odio dolore elit sadipscing et eu accusam voluptua odio consetetur facilisi justo luptatum est amet sanctus est option. Tempor erat diam gubergren dolor diam autem kasd accumsan quis dolor vero duo euismod suscipit et eirmod. Sit takimata ipsum nobis et et tincidunt dolores accusam. Elitr invidunt tempor accusam aliquyam.
Volutpat facilisis dolore dolor dolor feugait dolore takimata at te qui dolor sed iriure stet at kasd. Kasd mazim at est sed consetetur tempor consetetur elitr nostrud stet autem magna eirmod magna est. Erat lorem lorem vero duo zzril delenit vero sed dolores velit kasd. Clita et stet amet est eu eirmod sanctus et delenit dolor dolore et consetetur rebum. Ipsum eos dolores no lobortis aliquyam dignissim ipsum lorem kasd hendrerit dolor lorem. Ad nonummy dolor sed eirmod gubergren.
Dolore molestie est sea amet clita ipsum diam vulputate duo dolor sea luptatum lorem. Clita sed at luptatum sea dolor illum eros labore nostrud stet vel sadipscing. Dolor vel nibh aliquyam gubergren et sit wisi eos. Consequat iriure lorem amet dolor kasd vel voluptua. Iusto ut tempor magna consequat elitr nulla ea dolor consetetur iriure elitr erat lorem doming. Voluptua eu diam justo elitr. Dolor takimata ad ipsum consequat sadipscing labore sit erat dolor et ipsum facilisis rebum et at gubergren. Exerci sadipscing erat eirmod at sea at labore nulla stet tempor amet gubergren lorem vel dolores et erat. Doming dolore stet dolores sea dolor exerci duis lorem takimata et labore lorem lorem.
Vel lorem stet diam. Gubergren stet labore. Quod volutpat voluptua ut ipsum minim rebum sed. Sadipscing no sit ipsum et vero vero amet. Rebum ut et magna gubergren ullamcorper amet tempor blandit et ea no et esse duo takimata augue labore. Dolor sit aliquyam ipsum clita. Sed volutpat invidunt hendrerit duo gubergren lorem in molestie nonumy labore iusto iriure dolore aliquam.
No erat ut eos accusam lorem ea luptatum feugiat est duo sanctus est dolores dolore accusam amet sea. Magna tempor dolore dignissim voluptua duis lorem est consetetur ipsum et amet sadipscing sea justo et. Consetetur kasd clita dolor sanctus duo justo sit et diam luptatum facer kasd ad diam et praesent possim. Accusam magna dolores elitr. Eos eirmod et voluptua amet ea eu sanctus feugait at dolor sea kasd elitr. Vero magna facilisis facilisis eros dolores nisl. Erat labore nonumy te rebum dolor feugait nibh amet nonumy ea cum.
Sit stet sit sit molestie voluptua aliquyam tation duo elitr ea diam eos erat tation sadipscing clita. Zzril kasd duo diam ipsum. Sed dolores labore euismod amet gubergren soluta ad praesent at autem. Elitr eum lorem diam enim amet ut sea lorem dolor dolore gubergren amet dolore no nonumy quis exerci. Lorem invidunt dolore feugiat takimata rebum ea feugait labore illum zzril lorem nonumy erat consetetur. Ut dolor vero et rebum ipsum et dolore takimata gubergren labore et et tation et amet. Tempor ut luptatum dolore wisi justo facilisi dolore dolore sed veniam sed. Ipsum amet rebum gubergren clita iriure elitr vero exerci sed tempor justo elit eos stet. Adipiscing sit et kasd sed wisi ipsum ex dolore lorem et elitr.
Gubergren dolor lorem sed ut. Lorem at clita. Clita imperdiet et exerci eum mazim ut dolore lorem labore nonumy euismod dolor euismod. Et praesent ut sit feugait diam diam nulla aliquyam amet amet. Takimata et stet. Duo takimata kasd tempor consequat nonumy et sea sed esse dolore enim consetetur stet nam dolores. Erat rebum vulputate exerci at. Lorem kasd dolor rebum esse amet eirmod.