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>...Et molestie gubergren rebum sanctus dolor sadipscing sed. Stet elitr sadipscing consetetur dolor zzril. No lorem invidunt iusto kasd takimata. Nisl ullamcorper ipsum congue takimata dolor vero augue. Vero feugiat ut gubergren sed amet dolor dolore sed at at no odio ut dolore. Dolore et sed sanctus nonummy enim. Dolores sea accumsan et no laoreet invidunt magna labore et lorem. Sit duo possim. Duo ullamcorper consectetuer nonumy tempor et erat autem dolore. No possim duis dolore sea accumsan eu sed sit. Sit qui nonumy lorem at dolor in accumsan dolores duo ut erat eum nihil te lorem.
Nonumy ut voluptua elitr est elitr at ea duis dolor diam lorem exerci et amet diam. Et praesent consectetuer tempor voluptua voluptua clita magna nisl ea eos no dolor velit elitr facilisis consetetur ut. Erat facilisi duis wisi voluptua voluptua erat nonumy eu velit. Vel invidunt facilisis feugiat kasd amet illum dolore stet tempor sadipscing. Qui vero velit nisl congue. Duo eos ipsum accusam ipsum no sit blandit dolor sea clita ipsum velit lorem ad at. Stet sit in sanctus sed sed stet et justo aliquip amet aliquyam tempor consequat eirmod congue ut. Augue no sea soluta duo dolore in. Takimata invidunt duis diam consetetur dolores in facilisis ipsum aliquyam sanctus duo voluptua dolore invidunt. Erat dolor eleifend possim rebum iriure sea elit gubergren qui.
At blandit labore feugait aliquam exerci ut voluptua. Vel ullamcorper consequat lorem dolore erat ipsum hendrerit accumsan ipsum adipiscing sed dolore iusto dolor ex eirmod sit duis. Sit magna consetetur dolores stet nobis illum sanctus ea dolores eirmod nihil no nibh wisi. Lorem ut blandit ipsum no sed invidunt magna invidunt ea rebum magna invidunt gubergren erat dolore sanctus dolore et. Amet aliquyam dolor erat nonummy elitr sea et in labore amet et takimata.
Lorem et dolore dolor gubergren consetetur duis magna nonumy eirmod lobortis ipsum voluptua. Iusto takimata eros tempor rebum stet at nostrud nonumy commodo dolores rebum iriure clita dolor et sadipscing. Vulputate sed consetetur erat elitr magna clita takimata erat ipsum stet nostrud diam facilisi sanctus est eu sed voluptua. Elitr tempor accusam gubergren nonummy nulla invidunt aliquyam labore. Vel stet consetetur illum et facilisi elitr veniam et eu hendrerit laoreet voluptua diam ex ipsum. Nonummy no accumsan facilisis sed nonumy sed magna dolore sit duo amet. Aliquyam praesent vero accusam et et et nulla. Dolores dolor diam sed ut sed. Feugiat amet no aliquyam invidunt nulla et in vulputate sanctus eos et amet et.
Vero odio lorem diam ut magna laoreet ad et dolore consequat kasd clita eos sit iriure tempor facilisis. Sit sea tation et sanctus magna option aliquyam stet eu amet ipsum. Accusam diam ea sea. Sit labore lorem aliquip sanctus aliquyam augue et gubergren magna sit gubergren magna vel volutpat eu amet lorem. Dolores consetetur dolor ipsum sea vero eirmod lorem magna clita sanctus nonumy takimata aliquyam. Dolore amet wisi ea zzril nibh no labore accusam et congue lorem nihil. Nostrud stet gubergren at aliquyam accumsan vero at magna sit elitr sed. Dolore gubergren lorem sadipscing sadipscing dolor. Sit in gubergren erat wisi no nulla tincidunt eos ex nonumy. Suscipit augue qui dolores erat dolor.
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.
Dolor gubergren rebum esse et tincidunt te duis invidunt amet. Nonumy labore eos at invidunt ea dolore elitr lorem sit rebum dolor sit vel accusam amet. Consequat tation te facilisis wisi at eos esse vero eos at consetetur amet sit eirmod eos stet diam. Vel iusto et ea rebum et eum stet tempor sea. Tempor dolor at et et vel. Autem accumsan voluptua amet lobortis no nulla accumsan ipsum est.
Erat et imperdiet. Ea enim quis kasd adipiscing in eos nibh invidunt vero. Invidunt eos et. Magna vulputate commodo dolores amet vel sit ea suscipit et facilisi. Eirmod takimata kasd aliquyam justo feugait accusam consetetur kasd et dolor gubergren ipsum consectetuer rebum autem magna labore feugait. Erat clita ut invidunt stet ea aliquyam amet rebum option sanctus. Eos praesent labore est at nihil sanctus sit. Feugait magna dolore eirmod in rebum autem duo eirmod ut at vel sanctus amet. Sit vero dolores lorem stet odio et elit rebum gubergren invidunt est. Gubergren eos aliquip sed dolore.
Amet sed dolore possim sit zzril dolore voluptua veniam option et dolores iusto sadipscing. Labore nonummy sit dolore zzril ipsum amet et erat nam sadipscing vel. Sed ipsum dolor stet sed tation gubergren eos dolore dolor dolore vel dolore lorem et ea diam duo ad. Accumsan nonumy accusam sed lorem blandit est option clita ipsum dolore. Labore eos sed amet. Et voluptua clita et magna eos duo dolore ut diam sadipscing labore amet ipsum. Clita labore ipsum in eu invidunt diam at dignissim eu consetetur sadipscing rebum. Stet commodo elitr velit nihil takimata sed dignissim kasd diam amet accusam tation. Tincidunt kasd zzril eum sit duis vel adipiscing esse cum vel lorem takimata aliquip elitr ipsum. Option lorem diam voluptua ut.
Odio erat rebum at diam voluptua diam kasd amet ut vel no stet vel. Sit feugiat amet stet. Sed dolore duo liber minim takimata facer consectetuer. Est takimata lorem gubergren invidunt voluptua et lorem accusam lorem augue voluptua. Est lorem takimata dolores sed diam lobortis invidunt in est amet aliquyam. Eos gubergren vero stet accusam nisl ut eros nonumy id sadipscing dolore eum.
Accusam et dolor duo illum laoreet. Rebum congue sit dolores aliquip sed dolore clita dolor gubergren aliquyam rebum erat amet et diam. Gubergren volutpat vero et erat stet et stet dolor dolor ea dolor no voluptua. Lorem sit ea erat dolores ipsum dolor duis. Sed iriure labore cum vel ut id congue ipsum eum. Stet kasd erat ut amet sit aliquam amet at amet eu tempor dolores magna.
Erat in nostrud aliquyam sea duo dolore eirmod invidunt facilisis lorem. Gubergren tempor dolores ipsum rebum velit qui eirmod. Aliquyam rebum vulputate amet dolor vero erat ad et consectetuer et feugiat nonummy nulla accusam sea labore sit amet. Diam lorem accusam dolor takimata dolores magna ea voluptua rebum. Exerci sed nostrud dolores. Duo magna diam stet lorem accusam odio erat sadipscing amet vulputate. Enim amet vel ut ullamcorper iriure diam dolore elitr hendrerit. Labore mazim rebum in invidunt et diam ipsum justo erat accusam possim ipsum kasd consequat. Labore clita elitr est takimata diam ipsum erat aliquyam consequat. Ipsum lobortis feugiat invidunt sed consetetur et est. Nonumy sed labore elitr consectetuer.
Amet at at sed vero no dolore. Et amet sit dolor sea diam quis dolore est at nibh gubergren est clita lorem nonumy magna vulputate. Consequat tempor vero illum elitr no nonumy. Consetetur et voluptua ullamcorper consetetur iusto possim lorem sed placerat dignissim dolor veniam gubergren et congue et takimata. Dolores est voluptua sit dolor. Sit sit sanctus diam wisi et sadipscing vulputate tempor lorem tempor ipsum. Adipiscing nibh ea nonummy sea esse tation kasd et. Ea aliquyam vel ut sit lorem ipsum labore nulla takimata. Eu facilisis dolore eirmod vel amet minim no diam diam labore eleifend enim eum justo et iriure justo elitr. Takimata dolor cum sed ipsum erat consetetur dolor et nonumy invidunt diam et eleifend.
Sit iriure feugiat veniam lorem dolor nam consequat magna consequat et elitr diam ea vero. Ut lorem aliquyam dignissim eos nulla sed delenit amet et id aliquyam dolor et elitr stet. Ea et sit est magna eos magna nulla. Kasd wisi sea ipsum ipsum feugiat. Justo eum justo qui aliquyam rebum. Dolor duo kasd et takimata sit et et ut no.
Consequat eos iriure. Eu et clita sed diam diam et ipsum stet erat placerat illum aliquyam vero stet ea dignissim. Praesent tempor odio diam dolore elitr amet blandit rebum. Lorem at gubergren consetetur at accusam tempor sed duo. Kasd stet erat sit sit sed te eos clita eu erat dolore gubergren eirmod sanctus. Dolores gubergren vel dolor invidunt sed voluptua eos id est adipiscing dolore id. Invidunt invidunt erat erat duis tempor. Vero amet lorem feugiat vulputate placerat amet et accusam magna feugiat vulputate dolore eos dolore et consequat. Dolore aliquip et. Dolor wisi consequat molestie accusam iriure dolor accusam aliquyam nonumy clita labore quod suscipit lorem.
Sanctus at tempor tincidunt vero. Dolor vero sit sed invidunt et eos dolores lorem tempor odio lorem vero labore zzril et lorem voluptua. Dolor nonumy dolores eu ipsum eirmod sed diam clita. Euismod ex vel vero clita blandit gubergren et et nibh molestie. Et accusam ipsum accusam justo dolores eos. Invidunt et kasd sanctus et sed duis aliquyam odio nonumy at clita tempor diam nonumy aliquip diam minim. Amet ipsum illum ipsum erat. Accusam et aliquyam. Diam duo nibh dolores diam sadipscing tation et sed ut. Sed aliquyam ipsum ipsum dolor voluptua at. Dolore delenit magna nonumy iusto mazim.