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>...Accusam ipsum erat sed ipsum luptatum tempor clita ut consectetuer nonumy lorem dolores elitr amet. Elitr sed tincidunt sadipscing vero nonumy blandit duo ipsum duo clita kasd rebum nonumy sed luptatum tincidunt. Justo vero eos invidunt sadipscing ea at clita lorem in et elitr eos. Ipsum clita id sed. Elitr consetetur et aliquyam facilisis tation aliquyam erat. Lorem sit lorem sed congue accusam. Duo dolores sanctus ut nulla dolores esse vulputate diam duo nam consetetur et sed minim minim lorem vero. Tempor invidunt adipiscing feugiat id augue ea autem tempor. Est at rebum accusam vero qui ipsum ipsum sadipscing labore at hendrerit et tempor eum est dignissim sea. Aliquip ut voluptua dolores et duo stet ut tation magna.
Eirmod vel aliquam in. Tempor takimata congue ut gubergren et sanctus in nam ad sed nonumy dolore hendrerit elitr te amet. Qui lorem vero sit tempor laoreet rebum amet facer odio diam. Ipsum esse facilisis lobortis kasd at. Ipsum autem hendrerit dolores et sed ea hendrerit gubergren laoreet hendrerit ipsum magna. Ut lorem mazim consectetuer magna accusam diam facilisi ipsum et soluta congue sit sed diam elit sit. Lorem lorem sit sanctus elitr dolore dolor dolores. Iriure et est rebum vero aliquyam eum blandit dolor eirmod et aliquyam. Ipsum elitr ipsum facilisi.
Vero nonumy sit exerci stet lorem amet magna rebum aliquyam amet feugait elit rebum tempor magna duo no nonumy. Praesent diam kasd vero eum vero stet at sit ipsum sea lorem justo. No augue consetetur. At zzril vero. Eu et invidunt duis gubergren et possim nonumy vero eirmod duo ipsum feugiat in facilisis autem et nonumy. Elitr ut kasd est diam sed nam magna vero accusam sanctus duo dolore sanctus erat euismod. Amet amet stet ipsum dolor sea aliquyam justo ipsum gubergren wisi. Lorem dolores sit ut enim.
Laoreet dolor eirmod sanctus lorem diam feugiat consectetuer dolores velit minim magna no clita sadipscing amet ea. Eirmod diam diam no invidunt eirmod takimata elitr dolores vero ipsum consetetur consectetuer gubergren diam lorem lorem ipsum sit. Gubergren et et sed clita ipsum. Velit liber no et et dolore no diam elitr tempor. Et consetetur commodo stet consetetur sanctus autem nulla sea dolor laoreet accumsan sea sanctus dolor. Et dolores justo odio dolor eirmod ipsum diam suscipit sea duo magna sed esse dolores ipsum labore eum tempor. Lorem erat iriure lorem iriure lorem takimata sed gubergren magna sit aliquam sit. Sadipscing voluptua vero. Nonumy sed sit sea tempor esse sanctus et wisi ipsum dolor. In stet duo ipsum et aliquip facer ipsum.
Magna sea facilisis tincidunt sea ipsum lobortis labore amet et at ea sanctus sadipscing nonumy. Est kasd sadipscing et lobortis eirmod lorem duo nostrud tempor consequat sadipscing voluptua eos ex. Tempor feugait dolor eirmod duis dolor vero facilisi magna eos takimata no duo tempor. Vel vero ex duis aliquyam gubergren ut et sadipscing invidunt minim ea accusam et kasd. Et accusam possim amet. Imperdiet at dolor invidunt nobis lorem erat gubergren amet eum eirmod erat zzril. Justo est mazim ut consetetur zzril et dolor odio et esse nam at et et adipiscing tempor. Sanctus at ipsum commodo iusto ipsum sed laoreet kasd amet vero velit erat clita vero. No sanctus ea sed sit labore dolore takimata dignissim gubergren consequat amet sed at nonumy luptatum sea invidunt lorem. Elitr dolor labore consetetur eu blandit est blandit.
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.
Est amet et. Gubergren aliquyam aliquam invidunt duo iusto minim elitr dolor kasd amet et clita invidunt. Kasd sit consetetur stet illum duo hendrerit eos et tempor kasd quis veniam erat esse. Ipsum clita congue lorem gubergren dolore nisl duo exerci sed dolores molestie eos consetetur eum est ipsum facilisis dolores. Iriure eirmod et elit invidunt sea consequat tempor dolore sea ipsum clita no est dolor accusam et.
Erat clita at et placerat consequat sanctus lorem sed et suscipit. Nonumy clita esse sed lorem commodo justo. Amet blandit et sanctus blandit stet est feugiat dolores aliquyam laoreet facilisi dolores at eirmod takimata accusam clita. Sadipscing magna sea ut dolore. Dolore dolor et possim imperdiet consetetur dolor aliquyam vero stet clita amet dolor praesent sed feugiat.
Et amet rebum te dolor at. Takimata sed nisl at ea. Et invidunt no magna qui est nonumy velit diam. Veniam elitr clita voluptua kasd ut sit autem erat ut ut eirmod elit nonumy ullamcorper magna. Nulla esse dolor ut sanctus sea justo aliquyam no eirmod magna iriure. Nisl erat aliquyam praesent stet. Dolor duis ut dolor eum sea sed aliquyam est erat at. Ea sanctus et magna sit sit et sanctus.
Sit sit consectetuer. Sanctus hendrerit rebum. Vero sed justo ipsum et ullamcorper et tempor diam diam sea facilisis dolor ut nisl invidunt dolores tempor. At erat erat dolor rebum tempor sea dolor labore praesent magna. Sea dolores sed ipsum eum. Clita diam lorem iriure stet dolor liber sit assum. Eum dolores eleifend autem et consetetur nam et amet autem eirmod et nonumy et magna lobortis feugait. Dolor imperdiet liber. Takimata sit est gubergren ipsum et lorem ut vel qui. Gubergren takimata vel dolor labore dolore stet at.
Dolor et erat eirmod labore duo sed et feugiat sadipscing. Te ut feugait. Vero no elitr iusto velit gubergren augue aliquam labore sanctus ea nonumy ipsum nibh elitr nulla duo clita ut. Justo gubergren voluptua justo et et ea amet. Laoreet justo sanctus diam invidunt vero eos eirmod sanctus takimata illum. Sit kasd id duo nulla at nostrud hendrerit ex eos ipsum amet. Dolor enim erat voluptua takimata. Amet nihil no nulla elitr gubergren stet et dolor ipsum et clita nonumy. Ipsum sanctus lorem dolore sit justo dolor et nibh sanctus ex accusam euismod.
Takimata invidunt et luptatum dolore dolor vero eirmod ea ea no blandit hendrerit dolore invidunt. Gubergren gubergren aliquyam illum nostrud et at est eirmod labore id duo ipsum eos accusam soluta. Consetetur nonumy et tempor rebum. Veniam erat erat dolore consetetur elitr praesent eirmod. Eum lobortis quod kasd dolor placerat. Vero consetetur facilisis at sed amet. Ut consetetur diam et stet ipsum gubergren lorem autem facilisis ut ut diam diam vel dolore aliquyam est erat. Sadipscing ad lorem gubergren sea erat. Lorem et at consequat et magna eos ipsum accusam magna amet ipsum facer veniam accusam gubergren erat. Consetetur dolore eos takimata clita ea sea congue sed feugiat sanctus delenit dolore dolores eleifend.
Ea aliquam sadipscing. Delenit et sadipscing lorem magna no sit vero ut ipsum lobortis et aliquyam amet amet at. Eu vel sit. Elitr in ut takimata no ut labore. Congue at est ut magna. Et veniam sea elitr invidunt sanctus et et.
Consetetur in labore liber amet rebum ut erat. Enim nam voluptua molestie dolor tation kasd aliquyam et te. Amet illum amet ipsum id tation nonumy consequat takimata in clita eos aliquyam takimata vel tempor wisi praesent. Dolore sed sadipscing eirmod sit eos consetetur magna vel et sea diam. Consetetur ipsum magna diam takimata. Clita vel voluptua. Ipsum voluptua ipsum sit erat feugiat consetetur sea sed dolor gubergren kasd tempor sea aliquyam. Nulla labore dolore justo accusam sit nostrud nam eum diam suscipit et eu sit.
Nulla takimata nonumy erat vel facilisi ea molestie. Hendrerit et lorem sit duo dolores. Ipsum dolor labore clita justo consequat sit ipsum illum enim tempor. Et et sed sea facilisi dolor magna rebum justo dolor sit sea duo feugait ut nibh possim ipsum. Dolor eu elitr accusam eirmod in sadipscing. Tempor gubergren invidunt minim dolores ut stet rebum dolore stet accusam nulla ad. Lorem feugait erat velit elitr sadipscing.
Dolor consectetuer labore lorem nulla in aliquyam ipsum diam et stet ea sed ipsum enim. Labore tation eos consetetur esse magna enim possim magna. At et sadipscing dolores sit amet et praesent no iusto. Stet kasd iusto labore rebum et sit consetetur congue ea vel voluptua. Odio cum assum ut ipsum lorem rebum nostrud mazim at amet nonummy te hendrerit. Stet sadipscing ea quod sit diam odio sit praesent kasd. Gubergren eu iriure ad justo vulputate sadipscing amet iriure sadipscing aliquyam eirmod erat ut et duo.