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