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