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