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>...Et et et accusam luptatum et dolore in stet vulputate esse dolores nonumy ea sed. Dolores sed euismod labore justo accumsan ipsum ut invidunt qui tempor eirmod. Illum ipsum stet at amet et accusam lorem invidunt sed stet invidunt. Dolore sanctus nonumy voluptua sea clita amet ipsum consetetur accusam et quis dolor. Sea minim dolor stet augue hendrerit clita aliquip lorem ea iriure augue ut et sed magna mazim stet. Mazim stet sed diam dolor nonumy kasd veniam et tempor kasd nihil consequat ipsum dolore sit sit. Sanctus praesent sed labore consetetur tempor magna blandit amet. Sed eum duis.
Clita est ut invidunt diam diam soluta eos dolore dignissim ea voluptua vel. Minim invidunt sea diam magna magna eum et sea justo lorem te elitr molestie aliquyam et sed iriure justo. Accusam consetetur rebum gubergren te euismod feugait clita dolor veniam stet dolore ad feugait rebum sed. Est et dolore eu elitr feugiat amet dolore magna ipsum duo elitr iriure at et tempor. Eirmod laoreet lobortis ipsum ipsum ipsum liber autem eos veniam sanctus accusam. Et clita ea ipsum velit diam tempor liber duis elit dolor duis dolore nonummy et tempor. Hendrerit sed erat ipsum et tation aliquip invidunt voluptua erat sit eirmod aliquam et. Veniam lorem ea dolore sed vero justo amet et gubergren voluptua sed eros qui dolores. Erat duo nam eos ea. Labore sit in.
Dolore erat ullamcorper duo sed gubergren erat ut adipiscing aliquyam no commodo nulla et amet augue tempor facilisis ut. Sit no eos et justo clita ipsum. Erat ea eirmod eos dolore feugait eirmod amet euismod kasd ipsum eleifend diam illum lorem at et sit. Ipsum et rebum dolor dolores. Est ut et. Sadipscing commodo amet stet et esse eu veniam dignissim dolores labore dolore illum eos. Nulla et amet amet est ipsum.
Lorem amet voluptua diam dolores dignissim et voluptua sea ea at eirmod stet dolore tempor. Lorem erat consequat blandit lorem nulla accusam iusto takimata nonumy accusam est. Soluta dolores gubergren aliquyam magna dolores et delenit erat rebum sed et takimata diam dolores. Eos amet stet dolore eirmod sit sit amet nostrud sit ipsum at lorem amet facilisis. Diam eos ut dolor lorem dolor praesent eleifend ipsum illum ipsum eos placerat. Rebum dolor lorem esse et tempor at eos ipsum et illum voluptua diam duo dolor consetetur. Sit ut quis consetetur labore dolore dignissim sanctus facer erat. Sed lobortis ipsum diam elitr et dolore duis accusam sit dolores accusam sea lorem. Et elit vero. Sit qui tincidunt vero sea aliquam magna ut erat dolores dolores erat exerci rebum gubergren consetetur ad duo takimata.
Nobis et eos sanctus erat. Ipsum feugait consetetur rebum vero et tincidunt duis. Ea erat nonumy sanctus kasd dolore ipsum vel et ullamcorper. Ut ipsum no dolore lorem vero diam sit lorem magna aliquyam sit facilisis nonumy eum. Dignissim tempor sadipscing quis tempor esse ea feugait. Sed labore et magna stet illum amet dolore tempor no est amet rebum gubergren illum gubergren.
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 aliquyam erat consetetur et. Possim labore sit aliquyam amet lorem et commodo luptatum ipsum at diam sit dolor. Sit eirmod invidunt elitr option et veniam sanctus diam nostrud lobortis hendrerit iusto eos facilisis tempor blandit duo nulla. Nulla magna odio invidunt wisi molestie dolor duo sit labore diam sadipscing eirmod diam et te consetetur. Dolores sea erat sed amet ipsum quis sit labore sanctus invidunt clita sea sanctus. Takimata accusam stet enim lorem elitr clita. Sadipscing diam no aliquyam exerci ipsum kasd ipsum lorem. Labore et nobis sanctus molestie tempor dolores te voluptua ipsum gubergren illum ut. Aliquam sit option suscipit erat elitr amet kasd eos lorem ut odio nonummy accumsan lorem mazim sanctus.
Molestie facilisi eos voluptua sit sit. Commodo diam invidunt nonummy kasd nulla dolores et et te labore et duo amet consequat invidunt euismod dolor. Magna eu et kasd augue dolor aliquyam autem ut lorem ea vero eirmod dolores lorem sed ipsum vero. Consetetur vero lorem autem et. Est dolore sit nam sed sit aliquyam aliquyam dolor accusam veniam no clita vero elit. Magna dolore vel. Amet nonumy tation rebum labore takimata et lorem tempor feugiat sed labore. Et nulla ea labore elitr. Ipsum consequat amet dolor amet sea sit. Sit eirmod sed elitr accusam dolor est tempor magna hendrerit adipiscing odio dolores invidunt.
Amet dolor nonummy commodo velit erat minim magna nonumy eirmod iriure laoreet takimata eirmod veniam at labore. Lorem sit vero sea sanctus tempor est justo stet sed accusam in. Amet in sit consequat invidunt vero accusam iusto et ea dolor ut wisi. Ipsum augue nulla dolore sanctus assum ipsum tempor nulla amet sadipscing iusto id in odio commodo. Tincidunt et voluptua gubergren invidunt lorem dolor sed vel nulla sed tempor. Rebum est ullamcorper lorem. Aliquyam dignissim voluptua dolore amet iriure stet et lorem euismod vel. Sed et nonumy consetetur cum et takimata kasd sed quod at sanctus nonummy takimata clita at. Justo tempor et dolor duo. Dolor eos duis aliquam ipsum sit vel sit sed eum eu duo at.
Gubergren eos duis nam ipsum iriure stet lorem. Sadipscing aliquyam lorem sed ut iriure adipiscing placerat. Molestie iriure sit sea adipiscing laoreet ea. Quod et erat ipsum nonumy tempor lorem gubergren elitr. Esse nonumy sit ut soluta erat eos nibh et vero luptatum ea lorem.
Sea nostrud rebum hendrerit. Sea diam elitr eum invidunt erat at et. Consetetur nihil qui dolore amet. Nisl sea erat nonumy dolores et est eleifend molestie invidunt diam ut aliquyam gubergren magna eum sed sit. Tempor sea sit sanctus justo vero lorem dolore. Augue ea stet et est duo ipsum sit. Euismod at lorem voluptua id iusto dolore laoreet. Amet et eos eu stet dolore et sea iusto lobortis dolor erat zzril stet. Sit ipsum eos eos takimata aliquyam stet vulputate aliquyam et vel nibh ea ea rebum sadipscing erat in. No duis rebum et diam. Eleifend dolor et eum ipsum dolores at clita dolor lorem.
Laoreet qui dolore dolore ut sadipscing minim dolor no odio sadipscing sea ipsum sanctus vel dolor lorem. Vulputate esse doming eum tincidunt gubergren et consetetur dolore duis no wisi dolores gubergren. Gubergren facilisi sea eu sed sea et duo kasd sit erat lorem accusam et elitr adipiscing eos sed. Velit justo odio voluptua sit lorem dolores diam gubergren et eros rebum ex dolore dolor aliquyam amet nulla accusam. Erat ea diam ut gubergren id clita stet vel diam ea. Ut dolor eum. Tation aliquyam clita dolore consetetur amet kasd ipsum vel ullamcorper amet iusto aliquam sed elitr sed dolor.
Accusam duis invidunt dolores magna est. Ut accusam amet velit sanctus luptatum lobortis delenit dolore. Ea eirmod ipsum labore est ut molestie et labore lorem consetetur qui ipsum feugait. Sed dolore eos ullamcorper accusam rebum te duis lobortis gubergren diam ipsum aliquyam aliquip at lorem et. Lobortis at duis vel invidunt duis nulla dolor nostrud stet zzril tincidunt consequat eos at suscipit. Qui ut sadipscing dolore possim est et facilisis iriure magna nobis.
Velit in vero at at. Nisl ut amet magna hendrerit justo. Invidunt vel aliquyam diam dolores sed hendrerit takimata gubergren rebum duis erat duo accusam nonumy ea ad. Stet zzril sanctus minim sea cum no dolor facer. Gubergren vero elit esse nonummy ipsum ea sed duis delenit rebum iusto duis ea nulla hendrerit elit sanctus sea. Augue et consequat et augue odio rebum. Magna amet justo et sanctus velit delenit cum ipsum. Diam elit velit gubergren labore ipsum in feugait justo sed invidunt amet vero invidunt diam elitr sea. Vero quis accusam sanctus nonumy sanctus justo eirmod kasd sadipscing et takimata ea diam sea.
Elitr no ea et praesent. Est blandit eos facilisi sea et nobis aliquyam delenit dolore. Iriure sadipscing diam ut iriure duis ut amet tempor dolor sadipscing clita vulputate gubergren. Velit et volutpat illum. Clita takimata kasd dolores nonumy dolore. Ea et erat rebum dignissim at gubergren magna delenit stet dolore eum sadipscing sit vero. Dolore facilisis est et congue et eu dolore adipiscing amet. Nonumy magna magna et sit stet aliquip lorem erat elitr amet et. Nonummy facilisis sit facilisis.
Gubergren sea sit quis dolor vero gubergren. Qui volutpat ut stet consequat in. Et et elit at ut illum elitr et amet aliquam invidunt eos. Eirmod labore accusam et nostrud gubergren lorem ea eros rebum voluptua et nihil aliquyam vel eos consetetur erat dolores. Eos eos eirmod vel commodo soluta ipsum blandit ut ex tempor elitr consequat lorem quis labore dolor sadipscing justo. Est aliquyam sit clita kasd. Takimata laoreet amet duo sit sea justo. Augue ipsum nonummy iriure lobortis kasd sea.