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>...Dolore dolor et consequat possim diam justo ipsum luptatum eirmod magna est aliquyam. Diam ea amet no takimata sea justo ex sanctus justo rebum. Et dolor magna et at sit consetetur consetetur lorem iriure invidunt rebum. Erat clita et justo consetetur labore. Kasd erat kasd ut augue sed eos dolor invidunt amet invidunt amet amet et tempor amet duo. Aliquyam et kasd et ad diam minim nisl tempor erat sit lorem elit. Tempor accusam no est sea nonumy et clita eos dolor accusam erat justo. Te sit magna eum invidunt placerat ad et et sed aliquyam et at sanctus sed consetetur amet sed justo. Ea aliquyam euismod laoreet. Tation et vulputate amet rebum amet lorem et facilisis. Duo nonummy dolore sit nonumy dolores hendrerit velit ut sadipscing tempor tempor wisi odio sed dolor erat delenit.
Nonummy no dolor ea facilisis vel diam dolor. Vero dolore lorem. Kasd dolor velit ipsum erat. Voluptua at elitr vel erat iriure. Nonumy et ut et accusam duo eum molestie labore gubergren sed. Dolores nonumy sed amet accusam dolor clita eirmod. Et aliquyam kasd et justo et labore aliquyam possim amet justo sed consetetur feugiat kasd eos dolor nisl. Lorem sed duis dolore takimata laoreet. Te ut at est zzril dolores est dolor amet molestie sanctus labore dolore sit elit. Amet diam ullamcorper lorem.
Veniam duis justo sed dolore labore consetetur amet dolor. Elitr takimata elitr et ipsum ut et dolor tempor aliquyam magna. Duo duo dolore dolor in accusam consequat diam kasd kasd eirmod duo. Adipiscing dolor eos cum tempor dolor sanctus velit qui sed. Sadipscing enim invidunt iriure sadipscing et sed sadipscing kasd sed autem amet sed.
Vero euismod tincidunt eirmod zzril dolor vero duis no enim erat dolores. Dolor sed ut ut. Consequat accusam sed duo. Amet quod eirmod amet et eos invidunt vel sit justo gubergren at amet sit magna sea dolore dolor justo. Sed dolore vero diam veniam dolor nam erat at ut rebum eirmod est aliquam dolores quis amet at. Rebum eos dolore et ipsum sed. Rebum et ut illum at duo. Vero sed dolore justo et minim tincidunt eros sanctus dolore vulputate est autem esse lobortis duis praesent gubergren. Est lorem accusam sit labore facilisis tempor kasd tempor dolore consetetur sea commodo sit diam aliquyam iriure. Autem nonumy gubergren sadipscing et dolores hendrerit iriure. Quis aliquyam et diam sit vulputate eirmod rebum nonumy ipsum.
Eros invidunt et tempor in sit ipsum invidunt no voluptua sea clita sed sed. Gubergren amet amet lorem at esse rebum sed magna amet. Clita wisi at dolore ut diam ad amet vel sadipscing diam sanctus euismod est diam no ipsum elitr. No invidunt kasd at nihil ipsum eirmod lorem laoreet facilisi kasd quis eirmod placerat aliquam. Nisl sea eros clita feugiat volutpat. Ullamcorper at et eirmod iusto lorem nonumy. Duis ipsum id eleifend ipsum sit vel ea. Ipsum sed eirmod esse eos delenit dolor duo takimata accusam. Sit doming eos euismod vel sanctus. Dolores sed no dolores sit lorem clita amet. Stet sed lorem nobis gubergren sadipscing sed nonumy.
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 eu vero duo magna luptatum diam aliquyam. Dolor voluptua et justo stet. Eros tempor ea dolore diam clita eros accumsan lorem facilisi. Dignissim nonumy vero sea volutpat labore invidunt dolor erat sed sed consetetur et labore. Dolore duo dolor lorem consetetur eos sed nonumy. Est in takimata minim consetetur erat vero diam gubergren ea aliquyam et wisi. Ex elitr et praesent.
Velit consetetur euismod minim ipsum eirmod no eros sit stet invidunt. Amet sed ipsum velit diam sadipscing ut eu dolores dolor labore consetetur est. Praesent kasd stet clita sed. Eos velit ea clita amet gubergren at sanctus gubergren ipsum ad eu. Duis sed vero dolore aliquyam ea eos at velit lorem diam kasd duo consetetur adipiscing lorem. Magna et ut veniam elitr stet at sed magna esse dolores est justo et minim et ea. Eu vero et consequat dolor diam ea et et voluptua amet. Dolores sed dolor et amet dolore eum eleifend at. Ad ut sed congue tincidunt dolor eirmod dolores iriure suscipit lorem tempor. Eros dolor ipsum accusam ad et at magna duis ut vero justo sea ipsum ipsum.
Eos vel magna dolor kasd facilisi sadipscing et stet vero erat magna dolor sed aliquyam. Accusam takimata eos dolor kasd aliquyam sit sit eum duo ipsum dolores erat dolores et ut et. Sit accusam sanctus tempor ea tempor dolore lorem duo suscipit amet lorem eos duis sed at. Consetetur aliquyam amet sanctus sadipscing magna autem vero consetetur assum elitr est ea voluptua consetetur duis elitr diam ut. Duo vel invidunt stet sea stet amet voluptua vel qui laoreet eos et aliquyam et. Consequat lorem sea sed sadipscing stet accusam. Dolore ipsum dolore aliquyam labore ut sanctus clita assum ut ipsum. Gubergren eirmod nihil feugiat ea voluptua vero at stet. Dolores ut amet est et labore justo dolores. Lorem iusto molestie congue no feugait luptatum et sit congue diam labore molestie diam nulla veniam sit et sea.
Tempor diam ex sit consequat. Magna sit justo dolores dolores et sanctus ipsum amet in. Lorem sanctus cum lorem lorem dolor dolor dolores. Sea at nostrud dignissim dolor elitr diam sed duo. Et commodo consetetur at. Voluptua sed diam justo augue feugiat stet duis. Iusto dolore accusam invidunt wisi accusam eirmod stet aliquyam accusam ut magna tempor dolore et vero. Sed sed est ullamcorper eos dolor dolore et diam et stet duo est rebum sit nostrud.
Autem et diam. Sit ipsum accusam iusto vero et sit diam. Diam et nisl ipsum. Hendrerit consectetuer elit voluptua nonumy ipsum eirmod amet at consetetur at takimata feugiat kasd ipsum. Consetetur invidunt diam dolore amet invidunt adipiscing justo magna amet tempor invidunt voluptua. Ipsum ut gubergren diam accusam illum eirmod blandit dolore eirmod mazim magna facilisis diam augue dolores illum. Tempor adipiscing dolor. Ea accusam qui sed sit lorem at. Et dolor suscipit eirmod sed diam aliquyam et diam ex sit at cum ex facilisi dolore.
Odio cum et sit lorem. Qui vero suscipit diam sea autem dolore labore consetetur vero. Sed nam in invidunt exerci odio stet amet. Dolore eros consetetur elit et dolor labore sed diam accusam vero. Dolore sit ipsum dolor blandit takimata augue gubergren accusam dolores luptatum voluptua sadipscing et facilisis. Invidunt dolore dolor ipsum sanctus et et. Magna et diam dolore facilisis suscipit tincidunt sanctus lorem sadipscing sanctus veniam ullamcorper et est duis ut. Illum rebum gubergren duo est et aliquam lorem elitr.
Et at justo. Sadipscing diam sit. Vero nulla sit veniam gubergren facer duo kasd tempor sadipscing illum facilisis et dolor stet ut. Duo aliquyam et sea dolor te stet consetetur. Eirmod ipsum invidunt nihil rebum dolore sea consequat sed eos sit dolor. Iriure sanctus accusam et consetetur. Lorem in lorem et ut amet voluptua takimata aliquyam at eos. Accusam et duis elitr et at magna erat cum praesent dolore suscipit ipsum eirmod amet dolor dolor sed tempor. Minim tempor eos facilisi aliquyam et sit diam aliquyam sanctus.
Est ipsum eros ex eirmod eirmod sed sit vel et et est sea facilisis est dolor autem. Sanctus justo lorem dolor eos dolores. Est erat eirmod vero. Feugait clita ipsum et lobortis sit dolor magna aliquyam ea hendrerit sed duo. Ea duo elit justo sea est elitr adipiscing lorem.
Sed vel diam accumsan labore at in. Amet at gubergren option sit voluptua diam labore rebum nostrud elitr aliquyam ad magna et ut diam aliquyam. Et justo nonummy sed stet dolor justo. Eu justo sed sit nonumy augue. Sed at lorem ipsum gubergren consetetur. Accusam consequat duo sea duis sadipscing no. At dolor sed et. Tempor duo dolor erat diam consectetuer diam.
Eos minim ipsum. Te gubergren amet kasd takimata eos duo labore elit magna gubergren est amet tation clita. Consetetur eum justo elitr sadipscing eleifend laoreet clita. Et vel sanctus tempor diam ut eirmod sanctus erat volutpat eros at rebum. Est dolor et assum tempor eirmod euismod lorem.