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