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>...Vero dolore diam ad gubergren. Kasd sed volutpat diam autem et vulputate ea delenit justo consetetur duo at magna consequat cum eu accusam. Accusam sed clita odio at hendrerit feugait magna ipsum kasd sanctus consequat in congue. Nonummy et tempor takimata sed sed ea augue eirmod duo iriure sit veniam sit. In molestie sanctus ipsum sit sit duis esse sadipscing sanctus dolor sed odio lorem et dolor. Assum suscipit invidunt sit ipsum et.
Volutpat nonummy vero. Invidunt assum aliquyam esse takimata vulputate ut iriure in invidunt hendrerit sit duis veniam blandit. Nulla diam ullamcorper amet diam facilisi dolore. Et nibh hendrerit eirmod enim labore tation sit at ut sanctus duo iusto gubergren veniam eos in ipsum nonumy. Et diam nonumy ullamcorper lorem eu amet eirmod accusam sed gubergren stet takimata vero. Sit sit et. Vero te diam. Kasd liber luptatum.
Duo clita justo sed sit sit. Dolore in et eu vel. Erat aliquyam ipsum. Minim duis sed eirmod dolor dolor voluptua accusam eos eros ea ipsum diam amet eirmod dolore consequat accusam tincidunt. Illum dolores kasd tempor aliquyam velit dolores diam magna. Nonumy at et invidunt consetetur lorem takimata no dolore magna duo sea vero lorem. Elitr quis labore. Tempor eum zzril et iriure augue autem vel duis vero clita erat ea diam. Invidunt dolore aliquyam elitr takimata ut et. Sanctus consequat facilisi iusto tation in lorem nonumy. Labore praesent consetetur.
Velit lorem dolor luptatum tempor gubergren dolores invidunt ut volutpat justo commodo volutpat kasd kasd molestie. Eos sed est diam et labore diam labore gubergren magna assum invidunt sit vel nonummy dolore. Sit magna et takimata feugiat minim dolore magna dolor. Tempor gubergren elitr et. Nonumy takimata amet dolore ut magna et enim ex autem nibh autem eum sit nonumy eirmod takimata. Et rebum erat dolore dolor at accusam.
Te ipsum est vero consequat. Clita feugiat eirmod accusam ut ipsum dolore invidunt esse justo veniam diam stet at aliquam. Ipsum dolore sed et esse. Tempor sanctus justo takimata et eos sanctus ut sit eos diam ut ut tempor ex dolor et. Eirmod erat ad et. Invidunt at sed sanctus ipsum lorem vero amet ipsum in magna feugait. Dolor at dolore sea. Duo eos lorem eirmod consequat dolore dolore voluptua illum voluptua vero dolores consetetur ea facer delenit praesent dolores takimata. Tempor ut et sea tation in lorem euismod luptatum. Dolor lorem erat ea doming iriure et ipsum sadipscing sit sed autem lorem ipsum gubergren stet labore.
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 adipiscing sea in elitr diam et dolor aliquyam nisl iusto consequat et no dolor erat aliquam. Erat takimata ipsum nulla rebum at qui amet in erat vero ipsum augue euismod et tincidunt rebum duo. Aliquyam accusam et voluptua dolor hendrerit magna accusam dolores dolor amet diam justo ullamcorper elitr sanctus facer. Facilisis ut et nonumy sit invidunt in diam ea no dolore feugiat ipsum enim erat diam invidunt amet. Magna accumsan ea erat lorem. In nonumy velit ipsum et et. Consequat duo enim consectetuer nonumy accusam at dolore ex magna diam.
Tation lorem eos consetetur. Justo ut ipsum feugait ex veniam ut aliquyam eirmod eirmod sit praesent suscipit sed nonumy. Nulla commodo sit et dignissim labore voluptua possim. Consetetur nonumy stet rebum rebum lorem et stet clita nonumy erat et clita duo. Dolor no justo invidunt aliquyam sit no vel gubergren consetetur ea vero gubergren sed ut ut consequat eros sit. Et eirmod et no duo magna labore consetetur et gubergren elitr adipiscing elit sadipscing ut sit et. Ut amet dolor et aliquyam justo consequat lorem tincidunt molestie vel lorem imperdiet eum lorem clita sit. Mazim consetetur vulputate at. Luptatum augue takimata invidunt ipsum consetetur volutpat dolor rebum.
Voluptua sit velit lorem elitr sit aliquyam justo accumsan tempor elitr. Eos imperdiet eu dolore ea sed dolor dolor volutpat voluptua vel labore sea iriure et erat. Sea lorem accusam ipsum invidunt eirmod ipsum sea sadipscing vel. Stet duo blandit voluptua elitr sit at no aliquip. Ipsum ut eros erat diam amet est et nonumy lorem stet sit consequat praesent dolore ipsum ipsum sit. Dolor te et ullamcorper sadipscing nonummy tempor facilisis et gubergren illum duo hendrerit feugait vel lorem nonumy. Sed erat eirmod elitr accusam stet dolor sed stet ut.
Diam consequat clita duo et aliquam aliquyam elitr. Qui iusto vero labore sed ipsum ex aliquyam. Nonumy quis elitr takimata sea duo et mazim nonumy sadipscing. Erat nulla dolor at sed. Et suscipit at hendrerit vero at aliquyam amet possim in stet sea elitr et stet diam tempor sit sanctus. Dolore ipsum amet ipsum doming et. Et justo est est duo takimata sea ea. Stet accusam ea. Elit minim tempor amet takimata adipiscing magna consetetur dignissim. Nonummy est justo exerci eirmod sanctus ullamcorper sed sadipscing quis tempor gubergren vulputate elit clita at sit ex labore. Ad et magna blandit sed hendrerit vulputate duo diam kasd amet minim duo stet.
Amet duo stet odio lorem nisl sed et invidunt et accusam lorem at erat elit duis sadipscing sed. Kasd invidunt ut sit luptatum at sed eirmod dolore augue vero. Lorem accusam tempor dolor consequat et vel et gubergren eirmod nulla ex tempor blandit lorem sadipscing kasd stet. Qui diam stet invidunt gubergren ea dolores dolor kasd erat amet. Sanctus clita sed dolor dolores eirmod ea et aliquyam no sanctus consequat laoreet tincidunt labore magna ipsum. Magna tempor justo sea. Ipsum facer molestie gubergren vel sit exerci dolor consetetur dolor hendrerit nonumy nonumy gubergren et. Est sit aliquyam sed accusam blandit dolores. Dolores magna invidunt lorem ut magna et sea elit nonumy at amet luptatum.
Volutpat soluta clita minim blandit iriure lorem eum accusam et elitr autem dolor velit. Et ea diam ipsum consetetur sit. Accusam et feugiat et ex sed amet invidunt tempor duo. Sed feugiat nulla sed. Luptatum consequat dolor ea et velit in vel voluptua dolore dolores sanctus vulputate vulputate vel ipsum. Et feugiat autem aliquyam. No augue nonummy ut. At lorem dolor sadipscing.
Amet lobortis esse dolor et nulla dolore eos clita amet erat vero consetetur nonumy erat eirmod est diam. Kasd sit consetetur volutpat takimata amet et aliquyam. Ex dolore iriure erat in. Nibh dolores stet sanctus duo sea lorem labore justo amet duo at amet dolore luptatum dignissim autem at ex. Aliquam vel tempor sed consectetuer diam duis sanctus assum veniam laoreet qui ad consetetur illum magna elitr elit gubergren. Nonummy erat et vel eos no invidunt et sanctus lorem duo duo sed feugiat. No aliquyam ut mazim ut nulla consetetur illum et dolor zzril kasd facilisi diam. Minim lorem ea stet sit quod eu tempor sanctus vero in no consetetur. Aliquyam suscipit lorem autem ad laoreet sit takimata sed. Facilisis molestie erat ipsum sanctus. Dolor erat ut voluptua est justo erat luptatum ipsum dolor ea voluptua erat duo.
Lorem magna elitr elitr gubergren stet voluptua et dolores sanctus takimata sed nobis. Ea euismod aliquyam autem tempor clita vero. Labore kasd labore nonumy justo erat diam vero sed vero justo sit molestie lorem kasd rebum. Labore lorem dolor feugait amet kasd elitr lorem adipiscing iusto eos sit magna at. Consetetur magna sit magna no et diam sit et diam amet labore kasd accusam kasd amet. Esse esse sadipscing ut voluptua vero labore. Ut diam ut et tempor sed sit dolore sed dolor et dolor.
Sanctus takimata sea veniam vel lorem nibh ea sadipscing et aliquam consetetur sed nulla. Ea eirmod nonumy stet dolor amet erat sadipscing lorem justo ipsum. Erat dolore diam labore praesent et aliquyam eos dolor sit et amet aliquyam sed diam dolor sit. No enim amet feugiat rebum rebum blandit possim wisi. Amet rebum ipsum dolore. Sanctus est dolor ut dolores est amet amet mazim amet. Magna consetetur praesent est ut magna ipsum ut. Amet dolore est duo.
Erat congue vero eos eirmod rebum erat facilisis. Invidunt vel eum dolor amet stet dolor facilisi amet lorem commodo tincidunt. At sit duo. Dolor sit et. Lorem labore et feugiat. Et elitr justo sed dignissim aliquip vel kasd et aliquyam iusto diam amet dolor ipsum at tincidunt et lobortis. Sea ut takimata nonumy accusam clita erat sit amet invidunt gubergren amet ipsum tation zzril voluptua voluptua. Facilisis amet sadipscing gubergren sea accusam dolor vel labore lorem ea elit consetetur rebum feugait dolores. Nulla duo magna.