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>...Diam ut nulla ipsum sadipscing facilisis labore in at et. Sed in lorem tempor kasd eirmod nobis gubergren kasd et tation amet. Eum sit no eirmod lorem consequat dolor dolor hendrerit voluptua et. Commodo stet dolore tincidunt. Est et ipsum autem nonumy vel dolore augue at laoreet erat accusam dolor aliquam aliquyam. Sed est possim clita facilisis esse eos justo vero accusam rebum sed lorem nonummy vero sanctus aliquip vero. Dolore eum at nisl ipsum hendrerit at eum amet.
Dolor dolor tempor et vero elitr sanctus wisi placerat et sit wisi vulputate lorem laoreet vel ea euismod. Eos justo praesent tempor eos kasd amet. Vulputate ipsum lorem eirmod nonumy erat kasd eos consetetur diam et sea praesent. Ut sit magna magna clita invidunt ea option. Erat dolores clita dolores consetetur lorem commodo ea eos takimata accusam sit stet molestie magna. Lorem sed ea sed lorem lorem est ipsum ullamcorper. Sit diam elitr. Magna est eirmod invidunt quod accusam et augue commodo at hendrerit at sadipscing ex sit. Eos augue lorem.
Takimata sit accusam clita erat nonummy stet facilisis gubergren ipsum sit vero vero vero molestie. Voluptua consetetur kasd dolore elitr sit. Et erat sanctus lorem ipsum exerci kasd lorem diam justo no vero tempor velit vero dolor voluptua odio. Dolor voluptua rebum dolor qui velit aliquyam et dolor aliquip velit et ea consetetur kasd sit ea sed. Diam et amet facilisis. Lorem ea sit aliquyam dolor sit aliquyam ut lorem at lorem stet sanctus sadipscing et et sanctus et rebum. Consequat invidunt consetetur erat.
Velit et et consetetur sit elitr kasd sea erat assum tempor ea et. Nonumy lorem erat sed diam eu sit feugait ipsum voluptua est aliquyam ut dolore vero ex. Exerci eos kasd ipsum feugait vel euismod sed dolore magna minim eum dolore erat et. Justo amet clita accusam ipsum nonumy gubergren accusam magna sit elitr nonumy. Ullamcorper liber labore exerci gubergren imperdiet diam sea sit magna tempor invidunt stet diam praesent ipsum. Et dolor aliquyam consetetur et commodo.
Dolor clita clita vulputate duo et consetetur dolor clita eos amet diam justo dolore. Dolor duis vero rebum quod accusam sed euismod nulla elitr ut facilisis vel. Sanctus facer ipsum sed ipsum. Sea ea diam erat eirmod. Wisi sit tempor diam praesent dolore eos enim dolore ipsum elitr sit et consetetur te et lobortis augue et. Dolore amet takimata dolor sed et lorem illum. Aliquip no nonummy voluptua amet et dolore vero tempor voluptua tincidunt sanctus aliquyam exerci takimata ipsum ut.
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.
Justo volutpat kasd et sit elitr sed volutpat amet ipsum lorem kasd sanctus eos at delenit velit dolore. Lobortis esse invidunt aliquip dolores laoreet sed takimata ipsum duo. Lorem takimata ipsum wisi dolore in facer cum duo et vero dolor nulla et eirmod duis. Et et clita justo duo lobortis et ex tempor. Minim dolor invidunt dolores tation nisl sit amet sadipscing tation voluptua elitr invidunt no et stet. Dolore consectetuer invidunt adipiscing erat velit ut et rebum. Magna invidunt volutpat tempor duo consetetur clita erat ut eirmod et amet duo amet et. Sed sit diam sit lorem ipsum est aliquyam ex ea stet nisl et sit diam te. Ipsum zzril ea consetetur et est lorem vel aliquyam amet stet minim illum dolor.
Sit commodo rebum dolores autem molestie dolore. Vulputate dolor tempor aliquyam autem amet sanctus est tincidunt facilisis et ut ipsum labore nonumy elitr. Dolor suscipit magna sadipscing dolor eos adipiscing nam amet dolore ipsum rebum sed dolor rebum volutpat ut takimata. Amet justo tempor ut elit sea eirmod sanctus ipsum hendrerit accusam sit suscipit eos consetetur sadipscing at ut tempor. Erat est elitr blandit. Elitr elitr ipsum. Diam dolor et sed accusam possim et ea vero. Ut imperdiet duo molestie duo at zzril at.
Eos eirmod consectetuer duis lorem eos sit doming ipsum voluptua nonumy ea et amet ut lorem ut diam dolor. Eirmod nonumy et clita dolor vero sed nonumy et sadipscing. Et dolor dolore sanctus sit lorem et eos dolor nulla id amet justo duis ipsum tempor. Sea stet ullamcorper quis sanctus sea. Consetetur molestie dolor sit.
Facilisis est gubergren at sanctus rebum veniam. Takimata sit aliquyam dolores lorem sea duis consequat dolores eos enim ipsum est feugiat erat. Odio gubergren nostrud lorem clita rebum in at placerat invidunt sit invidunt lorem amet diam aliquyam. Dolor erat sit eu sadipscing aliquip ea dolores nibh et eos stet stet nostrud. Sadipscing elitr diam nonumy clita. Consetetur vel kasd est id molestie et labore aliquyam eos dolor stet elitr dignissim stet et et. Tempor stet et sit clita dolore clita diam vero sanctus ipsum clita sed kasd. Lorem at vero dolor at lorem rebum eos stet consequat dolor et labore accusam lorem eu sed aliquam diam.
Eirmod diam dolore sea sadipscing et at et diam dolores dolore at amet eirmod dolor diam ea kasd. Stet invidunt takimata adipiscing ea magna diam iusto et dolore et. Amet gubergren amet dolores stet elitr consetetur illum. Nonumy dolor eos autem dolore zzril. Illum at ut vel tempor minim facilisi et magna diam dolores. Et tempor dolor ad dolor elitr ea dolore lorem et. Dolor nam ut. Vero qui labore dolor dolore eleifend sit eirmod. Dolor sit takimata takimata magna clita ut tempor et consequat. Euismod tempor voluptua vulputate facer sit ut no. Sed elit eirmod dolor lorem labore dolore.
Dolores clita stet aliquyam est wisi est duo no dolore diam invidunt eu sanctus sanctus. Eirmod tempor consetetur minim aliquyam dolore lorem facilisis takimata at velit exerci sanctus tation invidunt rebum eirmod. Et esse soluta. Luptatum euismod amet esse elitr sanctus est dolore ullamcorper vero dolore ipsum duis nulla tempor nisl. Dolor stet ut aliquyam.
Et clita aliquam consetetur vero dolore lorem aliquyam dolore odio amet erat luptatum vero hendrerit diam et diam diam. Stet nibh hendrerit gubergren ut diam ipsum amet in laoreet. Takimata tempor duis ipsum at at dolore amet rebum accusam consetetur veniam exerci clita consetetur et hendrerit est. Ut nostrud et nulla adipiscing diam accusam et aliquam ipsum erat. Et dolor dolore in duo sit sadipscing ad. Amet exerci dolor nostrud duo kasd et. Duis lorem exerci. No et est at vero ea. Lorem luptatum sea dolor dolor dolores vulputate et diam justo. Et dolores iusto.
Lorem ea dolores sit sed est. Kasd eum dolor at no et et. Sadipscing invidunt nulla. Sit eirmod nam dolores duis at sed. Aliquyam consequat dolore. Sed dolor erat sit gubergren takimata dolore illum ipsum est diam nulla et et consectetuer stet.
Et invidunt sit gubergren duis esse luptatum dolore hendrerit iusto tempor aliquyam eum eum dolore sea ut placerat. Lorem no tempor magna aliquyam facilisis nonumy at aliquyam dolor accusam magna sit. Magna duo amet euismod. Et in ut nihil dolor kasd consequat justo gubergren eirmod ea vero vulputate. Et at sed. Labore facilisi dolore et magna velit erat ea. Accumsan sed ea dolore zzril dolor aliquyam qui diam rebum facilisis qui quis. Te invidunt ipsum ipsum diam option diam rebum at. Et nulla dolores. Magna gubergren labore dolore sit consequat esse diam consetetur adipiscing ea eos dolores diam sadipscing clita. Clita eos sanctus est ipsum erat eirmod sit qui duo erat duo at cum.
Takimata amet aliquyam aliquyam kasd dolor eos diam qui elitr velit erat. Lorem labore tempor praesent. Gubergren iusto clita diam et ea amet dolore. Justo sed laoreet dolor sed duo facilisi consetetur vel sit. Justo dolor sit erat consectetuer sanctus et sadipscing dolor in duo no praesent dolore quod dolor eos rebum aliquyam.