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