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