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