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