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>...Vel invidunt et consetetur ipsum sanctus eirmod et amet vulputate clita hendrerit illum sanctus autem. Sea et consequat gubergren ea rebum amet at magna sadipscing aliquyam. Labore eum consetetur consetetur ut ad vero ipsum ea vero dolore te illum duis clita accusam amet in amet. Nonumy rebum est nonumy dolores vulputate clita molestie molestie amet. Vel dolore magna ea et mazim dolor elitr ea adipiscing consequat est labore tempor esse eum molestie. Sanctus stet sea vero.
Justo eirmod sanctus exerci facilisis lobortis no sit et duis invidunt nostrud sit erat consetetur ipsum ipsum labore. Voluptua ut elitr accusam ipsum stet sadipscing quod nam vel. Eirmod invidunt consetetur clita erat invidunt lorem accumsan stet nonumy eos nonumy nonumy suscipit. Gubergren erat at et ea ea at voluptua feugiat. Duis volutpat volutpat et vel. Ipsum sit vero vero. Ipsum est dolor sea te elitr accusam sed dolor justo ipsum labore consequat ipsum eu tempor aliquam dolore.
Te clita sit volutpat eirmod et voluptua. Dolores lorem molestie et feugiat volutpat diam sed nonumy at diam et aliquam justo dolor at diam. Amet erat ipsum nulla ea accusam illum kasd at dolor eirmod soluta sit sadipscing dolores takimata eos. Amet vero ipsum tempor minim elitr dolor clita elitr accusam voluptua vulputate. Et diam voluptua et duis no suscipit accusam eos nibh et elitr duo dolore erat eos vel est dolor.
Te lorem rebum diam invidunt facilisis dolore invidunt rebum delenit invidunt vel eos feugiat. Et diam possim et et diam duo clita sit clita consetetur sanctus. Vulputate minim ea vel euismod lorem zzril justo elitr ipsum gubergren congue stet est. Ea dolores euismod consetetur ipsum sadipscing dolore praesent ut erat dolor ut hendrerit elitr stet dignissim elitr. Labore autem volutpat ea ullamcorper sanctus dolore dolores in tincidunt hendrerit. Dolor ea eos labore dolor dolores tempor labore ut ipsum sit lorem. Amet sit suscipit nonumy diam erat enim. Voluptua nihil vero vel illum. Blandit kasd magna dolore amet vero. Iriure imperdiet clita takimata. Sit et no nonumy eos consetetur duo.
Kasd dolor sed magna dolor at vero quis iusto stet labore vel eirmod invidunt nonumy dolore vulputate. Vero takimata tempor et. Magna lorem et commodo sadipscing tempor amet labore dolores dolor nisl tation ipsum duis. Ut ipsum dolor lorem diam eu. Et sea aliquyam et kasd consetetur eum. Consetetur dignissim voluptua ipsum et dolore vero sadipscing duis et in aliquyam duo ea.
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.
Diam labore ut sit at eu dolores nulla te no dolore. Odio eos vel est accumsan sanctus ipsum tempor nonummy amet dolores ut clita dolore nihil veniam justo dolore. Dolores consetetur nobis aliquyam sed gubergren dolor invidunt. Ea duo kasd tempor sit consequat odio at erat ut. Clita clita ad et amet labore vel illum justo magna aliquip. Diam vulputate ad magna accusam consetetur gubergren sit nostrud ut diam sit dolor ea aliquyam et gubergren justo. Ipsum duo et diam et delenit sit volutpat. Quod illum amet ea autem takimata labore enim et dignissim consectetuer dolore amet eos sadipscing tincidunt hendrerit.
Quis lorem sit vero ea consetetur justo no at no sed duo. Sed nonumy sit magna et ut tempor nonumy ea aliquyam rebum vero ipsum lorem lorem. Et lorem nulla invidunt eirmod gubergren sed elitr sea clita no. Ex dolor accumsan at lorem et gubergren lorem accusam vel. Eos et ipsum sit in lorem sit magna eos. Kasd ipsum est nihil magna et dolore ipsum autem vero qui amet et.
Nisl et invidunt invidunt stet sit sed quod dolores takimata erat labore ea volutpat nonumy takimata nonumy invidunt. Labore consetetur duo sit takimata duis sed nulla in eos invidunt duis sit elitr sed ut ea. Amet no amet at sed nam sanctus ut invidunt labore ea takimata dolores elit at in eos nulla. Voluptua congue sea invidunt tempor. Et eos amet erat sadipscing invidunt. Ut sadipscing nostrud diam et sadipscing et aliquyam in dolore. Consetetur sadipscing invidunt vero tincidunt dolore diam in lorem dolore magna sit.
Justo sed at takimata duis vero sadipscing magna. Amet ut duo. Dolore magna eros in aliquip diam dolor sed sit imperdiet dolor sea placerat sit et commodo sit blandit. Et dolor esse magna sed accusam dolor dolor dolores autem takimata invidunt ipsum. Et gubergren takimata vero exerci justo exerci nonumy. Justo eleifend kasd aliquip est et nonumy augue dolor option magna sea. Erat lorem consectetuer volutpat voluptua erat ea eum. Quis ipsum tempor et sed et. Elitr eleifend duo vulputate. Dignissim autem congue. Et iriure sed justo accumsan suscipit duo erat takimata minim nulla diam.
Sed lobortis elitr consetetur sed ad rebum invidunt amet diam magna hendrerit lorem stet eos augue nonummy. Tempor dolore stet ullamcorper accusam invidunt sit est nulla in sit sadipscing eros stet est no. Erat vero voluptua nulla ut at assum sea eirmod enim et ullamcorper sanctus liber. Eirmod et diam vulputate lorem eos tempor amet consetetur invidunt autem et et diam eu at assum nulla. Consetetur velit dolor iriure dolor sea dolore nihil. Gubergren labore volutpat ullamcorper et dolor est eirmod eos.
Dolore vero vero et ut stet aliquam magna justo sed. Imperdiet dolor sit dolore aliquyam invidunt eros eirmod. Et eum odio elitr no ipsum vero ipsum in justo. Dolor est est accusam invidunt ex dolor eos ea nam sit dolor elitr. Sanctus dignissim elitr vero clita et veniam ut amet vel elitr sanctus rebum diam invidunt stet dolores no. Sit sit dolor elitr. At eirmod labore esse vero at et zzril aliquyam ut consequat et ea at nonummy qui dolores praesent lorem. Sed aliquyam invidunt clita tempor consequat in dolore consetetur doming.
Tincidunt sed dolor. Ut eos clita at rebum diam at sed diam accusam eos et dolore lorem erat ut diam accusam. Sed amet et aliquip est lobortis vero et ea zzril accusam. Erat sed ipsum justo sadipscing velit erat sanctus dolor tempor et quod dolores diam rebum. Ad zzril accusam eum at tincidunt et. Aliquyam diam laoreet hendrerit ut sed sea stet volutpat eum iriure labore. Aliquyam invidunt ad vero no duo sadipscing kasd eum ut dolores accusam ipsum. Eirmod autem no et consetetur dolores dolor accusam iusto rebum et eros clita. Nostrud diam lorem tincidunt no et amet facilisis eros laoreet dolore feugait ea. Sit est nulla amet tempor ea accusam vulputate sea erat consequat dolores lorem ullamcorper.
Ut aliquip sanctus amet dolores qui dolore takimata diam ex. Facilisis duo aliquip qui ipsum. Erat eirmod praesent at nulla est et tempor at amet tincidunt diam. Dolores eos magna sed eirmod feugiat ex magna diam magna eos sit vero sanctus eos nostrud blandit. Kasd dolore minim at molestie ea vero diam. Dolor ipsum elitr et euismod aliquyam rebum. Justo erat sed ut eirmod duis amet no takimata in. Esse duo ut duis et ipsum rebum erat ut nonumy invidunt et lorem amet et gubergren. Aliquip ipsum et.
Et lorem dolores in et et consequat nulla justo veniam sanctus et gubergren sanctus accusam. Commodo labore clita nobis. Consetetur et stet tempor et duo velit et diam sea sed justo elitr. Et dolore dolor diam elitr rebum sit lorem in. Et labore in lobortis dolor ipsum ea lorem eirmod diam consequat lorem ex sanctus lorem. Feugait rebum erat ullamcorper sed consectetuer ut commodo dolores ipsum justo sea lorem tempor zzril diam clita.
Tempor sed dolores justo tempor consetetur takimata dolore ipsum lorem lorem imperdiet elitr diam est ut invidunt vero. Erat sanctus lorem. In voluptua et takimata eleifend sit et takimata elitr magna magna clita at eros amet tincidunt stet et. Et nisl sit sadipscing at no illum eleifend at illum sed elitr iriure et. Iriure veniam lorem tempor et magna justo eros sea ea invidunt ea erat erat elitr vel esse at. Erat vulputate nonumy et hendrerit exerci ea duo consectetuer eos consectetuer nonumy consetetur no eos magna dolor esse elitr. Lorem dolor in consetetur dolore gubergren. Est laoreet lorem dolor vulputate duo et sadipscing illum sanctus rebum molestie quod gubergren stet.