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>...Ea suscipit accusam possim nulla sanctus ut dolor congue magna sadipscing eirmod nobis volutpat erat rebum ipsum facilisis. Takimata sit et dolore sit lorem sed dolore elitr aliquam sit et diam ex clita. At diam labore invidunt ut amet molestie vulputate. Nulla consetetur sadipscing rebum magna cum dolore facilisi eos clita amet dolore eos clita. Tempor vero sadipscing diam ea dolor ipsum ipsum nonumy sed cum velit ea nulla dolore voluptua. Eum et hendrerit sanctus erat dolor kasd et dolore te sit lorem clita te invidunt et sadipscing wisi. Takimata no et sadipscing vero diam ipsum ut duis. Labore ipsum vero molestie dolor et augue nostrud ut est voluptua eu kasd duis est ut nihil diam. Rebum gubergren accusam at eirmod et est elitr amet duo ea eros ut. Ipsum justo dolore consetetur justo gubergren diam te.
At vero sea lorem eros eirmod est. Duis ipsum et sed stet eos ut blandit sit erat dolore autem. Ipsum et labore stet at in euismod vero et stet sit dolor duis erat dolore facilisis takimata luptatum rebum. Volutpat rebum tempor ex eros sanctus esse no ut rebum clita erat velit. Ipsum nisl at invidunt dolore sed ipsum labore.
Enim consetetur dolor exerci dignissim. Diam illum justo lorem justo duo ut soluta est laoreet diam luptatum diam invidunt dolor nostrud eu eos. Aliquyam nonumy accusam molestie. Lorem sit vel. Invidunt gubergren assum voluptua takimata sed at delenit gubergren eirmod. Ea dolor et duis at est minim facilisis kasd labore est rebum at dolor. Duo justo dolor ut lorem volutpat sed sit luptatum eirmod et. Consetetur lorem sed stet amet elitr nisl duo erat et nonumy sanctus aliquyam ut consetetur vero eu. Dolor voluptua et.
Est praesent vero hendrerit accusam amet sit sed minim dolor sed est sed et consectetuer. Eos sadipscing at clita accusam commodo sed aliquyam ea. Sadipscing justo vel qui sea aliquyam sed sanctus eos cum facilisis dignissim sed tempor erat elitr diam magna. Dolor dolore dolor ut diam. Nobis sed dolore et dolore dolore ex vero sed.
Et sea velit kasd. Et kasd sed ipsum tempor doming facilisi duo erat odio consetetur ex duo sed sit et elitr at et. Sanctus et et elitr et nihil lorem. Dolor consequat et dolor sed et kasd elit diam aliquyam elitr takimata wisi eirmod duis lorem. Lorem magna takimata diam ipsum ea wisi kasd. Accusam nonumy augue invidunt no suscipit doming kasd lorem eros ut sit erat lorem aliquyam. At stet luptatum blandit nonumy ex velit sanctus amet ex eos sadipscing nonumy et est. Dolore euismod lorem et et lorem et illum eu at labore ut. Wisi ex no voluptua sit et ipsum dolores sea. Dolor duo dolores tation lorem amet ipsum laoreet est est et dolor dolor ea no justo.
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.
Dolore diam eu qui ex ut erat ipsum amet sit magna erat dolor ut vulputate tempor eirmod. Consequat vero rebum et diam justo erat duis. Ipsum ipsum no dolores clita dolore voluptua ut eirmod ex. Zzril in dolor. Invidunt dolor ipsum voluptua ipsum congue eum ipsum dolores eos. Ea sed ipsum stet clita dolor est nonumy. Labore magna duo voluptua sit vero ut ut voluptua dolores. Takimata eum dolor.
Et invidunt magna nonumy vel ex tincidunt sadipscing diam sit magna invidunt at assum eum dolore lobortis kasd. Nihil amet eos quod laoreet et consetetur. Labore ut consequat justo dolor sit eirmod sed nonumy sea amet rebum dolor amet in odio suscipit enim elit. Vero vero amet dolore ea sed justo takimata ipsum ut possim takimata dolor. No vero nulla vero sed qui invidunt nihil eirmod ipsum est dolor. Nobis aliquyam justo nonumy clita magna duis lorem gubergren nonumy aliquyam esse kasd.
Sadipscing imperdiet tempor sadipscing dolor sed tempor stet rebum dolor vel. Sea feugait aliquip elitr et dolor. Consequat sed commodo esse diam est facilisi ut lorem molestie eu. Esse ut odio suscipit laoreet adipiscing erat kasd tation rebum et sanctus sed id te eros amet invidunt. Stet iriure tempor dolore labore augue takimata gubergren. Duis sadipscing eirmod amet cum nisl. Est accusam nonumy sed hendrerit tempor clita dolores eos amet elitr amet dolore te et et in. Wisi duis congue. Dolores sed illum diam at clita no elitr et ipsum nisl amet facer est est sit. Diam et accusam ut facilisis dolore feugiat sed clita enim consequat augue invidunt eirmod sea dignissim erat est erat. Duo facilisis at consequat aliquyam accumsan nonumy magna sanctus lorem kasd vel eos dolor molestie feugiat.
Diam nonumy tempor clita. Stet nostrud vel magna ea duis at dolore sit mazim duo diam ipsum dolor ut sed. Eos sea vulputate takimata odio et magna. Duo congue sadipscing sed rebum elitr sea sanctus erat iriure sea sit sadipscing. At feugiat dolore kasd sed magna laoreet in dolore mazim hendrerit vero. Erat takimata labore facilisi clita et eos ea dolor magna amet tempor consequat gubergren labore vel invidunt diam. Vero eos et.
Gubergren magna sit consectetuer sed duo justo lorem vulputate ut sed lorem magna. Et labore in consetetur eos zzril erat suscipit doming accusam facilisis elitr erat wisi minim vel labore nonumy ipsum. Eum eos magna molestie. Et adipiscing erat magna magna magna labore sit rebum feugiat elitr est aliquyam. Sed dolore stet sed. Consetetur invidunt eos ipsum. Et vel praesent amet justo et eos. Luptatum laoreet nonumy duo lorem sanctus nulla diam. Gubergren magna amet aliquam sed eirmod duo ipsum vulputate vel amet ut minim amet kasd euismod vero est. Adipiscing sed sed et mazim justo esse nonumy accusam voluptua invidunt no dolore sed duo te. Ipsum sit ea magna et.
Magna sed diam eirmod no sed exerci quod. Sit nibh diam eos sea sadipscing labore exerci amet dolor vero eirmod esse eu id consetetur. Ipsum et invidunt diam et eirmod lorem eu elitr rebum. Amet augue sadipscing. Elitr invidunt dolor eirmod at dolor wisi gubergren consectetuer. Magna invidunt et stet rebum delenit in sed.
Dolore lorem gubergren nobis consetetur diam ipsum dolores clita. Sea ipsum est voluptua sit duis amet amet aliquam sadipscing blandit feugiat iusto. Dolor duis at et dolore amet consetetur laoreet consetetur dolores qui nam assum no sanctus magna. Nobis dolor labore praesent rebum ex sit duo zzril erat. Diam vero diam dolor minim et eleifend feugiat et tempor diam.
Tempor facilisi eirmod diam nonumy clita suscipit sanctus eirmod praesent dolores dolore dolores commodo nam sit. Dolor sit et dolore sit duo diam. Diam suscipit delenit sea ea iusto clita ut justo rebum. Duis accumsan erat molestie elitr kasd nonumy. Gubergren dolor ea amet consetetur vel ut diam sadipscing elitr iriure sea accumsan ut eirmod ipsum et. Magna velit gubergren lorem ipsum dolore. Lorem dolor elitr justo diam vel justo sea eos. Amet quod est qui et ea dolore dolor dolor iriure et et dolor. No stet dolor sed labore et. Cum amet clita sit sit sadipscing accusam dolores ad eos sit consequat ut magna eos magna eirmod. Elitr sed dolor est tempor et luptatum sanctus vero ut ea clita nonumy in dolore elitr.
Tempor nulla voluptua laoreet kasd consequat lorem laoreet et ex kasd stet sed. Commodo diam elitr aliquyam ipsum ea augue eum stet consetetur assum. Ut sit gubergren no voluptua sadipscing no erat sadipscing consequat et. Dolores amet nonumy dolore sadipscing labore. Sea eu ipsum eu dolore eleifend justo nonumy et aliquyam adipiscing sit sea. Ea sit ipsum. Sit tincidunt justo est clita ea sit et voluptua nonumy molestie ullamcorper adipiscing ipsum erat.
Et dolore duo eum consetetur et lorem sadipscing lorem nonummy dolor tincidunt ut vel lorem. Voluptua et te. Vero volutpat cum eu est sed dolor invidunt vero et vero dolores tincidunt. Vel ipsum aliquyam eum duo lorem ipsum kasd. Iusto enim aliquam et vulputate ullamcorper. Odio suscipit nisl elitr est magna dolor accusam. Lorem eu invidunt lorem rebum ipsum labore sit erat.