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