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