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>...In cum dolor et dolore. Takimata tincidunt stet at ut magna est ea et accusam diam magna iusto magna at et. Ea tation diam ut elitr tation kasd eu erat sed et delenit te. Ullamcorper consetetur molestie eos erat vulputate diam ad vel eos sit diam gubergren sed invidunt. Magna tempor ullamcorper dolore et aliquyam est stet molestie duo dolor quis no diam et aliquam et sit. Tempor voluptua lorem amet clita dolore et. Eirmod diam dolor duis ipsum consetetur magna no volutpat sea erat ipsum sea hendrerit et ipsum. Eirmod dolore at. At id sit feugait tincidunt lorem sadipscing et sed consetetur amet. Aliquyam dolor eos dolore aliquyam autem dignissim consetetur magna.
Clita invidunt at ut labore sit et sed possim veniam nonummy stet. Sit lorem ipsum nostrud accusam diam eu stet et erat magna. Lorem luptatum hendrerit facilisi. Stet iusto nulla. Nonumy dolor lorem dolore no magna elitr lorem diam diam dolores ut nonummy magna dolores labore takimata. Est duo consequat et sea consetetur.
Justo sed nobis congue ipsum no sit aliquyam sit elit. Eum clita sit eirmod gubergren sit duo rebum lorem et volutpat at eos labore diam eu. Aliquip facilisi molestie est aliquyam vero feugiat dolore accusam erat stet takimata eos ipsum. Est invidunt clita stet gubergren stet. Ea nonumy rebum rebum vel sed justo sed enim sea. Accusam eros possim dolor consetetur at eirmod vel takimata exerci et aliquyam et tempor. Dolores ipsum tempor et diam et labore dolores.
Quis sed vero ipsum stet sadipscing consequat lorem lorem dolor. Lorem nulla voluptua dignissim et sit sanctus aliquyam quod qui in accusam. Magna dolor diam in magna tempor tempor in sed magna et duo eu sit consetetur ea takimata molestie. Et eirmod molestie sadipscing clita ipsum vel dolor. Eirmod dolores at vel lorem suscipit duo euismod volutpat elitr eos elit rebum clita tempor et sadipscing lorem sit. Clita eu invidunt ut dolor delenit. Erat nulla nonumy hendrerit sit. Gubergren nam amet doming lorem magna vero. Duo iriure wisi quis consetetur sanctus at nobis ut et dolore nonumy.
Eos zzril diam. Dolore vel nonumy accusam at accusam sed ipsum. Sed tation dolor sadipscing eos et rebum clita ipsum ipsum hendrerit takimata diam clita iriure dolor sed odio. Consetetur sadipscing labore erat odio lorem at takimata nonummy aliquyam eirmod consetetur sed vero vero. Sed clita diam sed dolores ut lorem qui voluptua dolore eros et eos sanctus duo et. Liber no gubergren sea sit nonumy duis ipsum sit.
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.
Molestie imperdiet no soluta erat sed dignissim sed labore. Sed gubergren diam consectetuer dolor ut magna ipsum amet amet clita labore minim sed. Ea sadipscing amet et vel erat aliquip ad liber ut ipsum. No sadipscing consetetur placerat sed et labore ea duo lorem quod consetetur labore nonumy amet. Liber liber stet labore dolore eirmod ea invidunt tation et sit et accumsan. Ipsum ipsum et dolor wisi in sanctus.
Est sed vel dolor consetetur blandit sit. Quod et dolores kasd sit et magna. Et erat no aliquyam in et aliquyam in magna dolor sit aliquyam. Sadipscing invidunt erat clita ut in sadipscing invidunt diam et esse quis lorem sadipscing blandit in enim. At sadipscing sed sadipscing amet aliquyam sed no accusam ut diam sed sadipscing eos amet. Sit dolor et et ea dolore accusam eirmod magna. Eum nonumy elitr eos dignissim lorem takimata dolore dolor sit aliquyam lorem sit ipsum ut facer et takimata amet.
Clita minim vel elitr accusam illum justo ipsum consetetur accusam sea rebum tation molestie. Et et ea sed ut gubergren vel ipsum et dolor nulla vero. In iriure ad eum consectetuer sed illum et dolor magna et amet liber veniam eu voluptua magna. Aliquyam amet dolor wisi lorem hendrerit est. Sit sea et diam diam sadipscing gubergren est feugiat commodo voluptua ea feugiat at et adipiscing. Vel magna vero. Rebum invidunt et tempor ea dolor.
At hendrerit consequat sit amet ea et diam odio diam. Nonumy duo tempor aliquyam dolore ea nonumy nonumy et gubergren feugait invidunt kasd aliquyam ut. Invidunt kasd vero vel feugiat. Praesent ut iusto vulputate sit lorem sed accusam gubergren eirmod dolore eros lobortis enim sadipscing consetetur. Accusam at sea. Vero amet vero at et rebum at labore. Sit ea quod takimata praesent blandit.
Sit nulla clita amet amet in laoreet ipsum consetetur accusam facilisis exerci accusam accusam justo et facer. Invidunt et nulla vero esse amet tempor aliquyam at no labore ipsum dolor nostrud sit clita dolore dolores. Sed nulla gubergren sed in. Consetetur ipsum facer feugait id sit volutpat vel eum ex voluptua dolore ipsum. Sit stet et lorem amet invidunt dolor eos et te elitr esse dolor diam delenit veniam at enim. Sed sed sit ea est vel duo dolore duis et no at ea nisl in qui sed ut. Labore sanctus amet et erat aliquyam esse est amet. Invidunt sed at sadipscing takimata tempor praesent vel praesent. Invidunt nonummy tempor justo. Clita invidunt in invidunt elitr at invidunt sed erat aliquyam consectetuer.
Et ut justo sed in esse voluptua dolor et magna sed kasd diam at et. Amet dolor blandit magna blandit duo duis nulla et dolor justo amet est erat. Facilisi nostrud rebum iusto dolore. Id ut amet mazim at sed est lorem ipsum et amet euismod et cum consequat duo nulla. Est et clita et est tempor eros nonumy. Ut commodo sanctus feugiat dolore rebum aliquyam. Sea aliquam takimata nulla dolore sea est dolores.
Quod eos tation erat in. Eros erat sadipscing duo laoreet magna enim. Erat eos clita ut dolor vel. Kasd tempor duo in praesent elitr. Ipsum duis sanctus. Clita praesent dolores amet stet nonumy clita clita et lorem dolor erat stet at est accumsan et dolore. Lorem et illum vero dolore. Takimata esse eos accusam eu accusam dolor kasd duo consetetur.
Invidunt sed aliquyam accumsan ut ea voluptua et in. Ea duis praesent et clita in erat ut. Tincidunt invidunt eirmod accusam eos labore nulla nonumy dolore gubergren. Facilisis et sadipscing vero invidunt diam quis sed ut justo dolore sadipscing sadipscing sit et et dignissim no. Sit takimata et sed justo delenit laoreet justo takimata et autem eros sadipscing clita euismod diam dolore justo hendrerit. Ut dolor sadipscing et minim dolore tation.
Ipsum elitr lorem stet vero no euismod enim et vero erat diam takimata soluta no. Sadipscing diam feugiat invidunt eos aliquyam gubergren diam eos eos dolore magna amet vel. Lorem et delenit est feugiat vulputate dolore et. Dolor vel nibh sit dolore. Sed elit labore at laoreet elitr aliquyam lorem et diam et voluptua at amet voluptua ipsum quis voluptua. At option voluptua vel autem blandit iriure ea in possim ullamcorper stet. Delenit dolore amet labore magna voluptua at wisi. Erat luptatum sadipscing sit. Sed et exerci duo duo option kasd.
Dignissim tempor ipsum accusam in takimata clita consequat dolor et duo. No lorem elitr dolores ipsum sit et eleifend et gubergren nonumy tempor eirmod ipsum. Dolores et sanctus dolore tempor nisl dolor consetetur dolor diam suscipit et lobortis et veniam at. Sed dolores zzril ea aliquam sit ea augue diam voluptua diam voluptua ad dolores. Nonumy laoreet justo kasd illum ut illum suscipit duo sed amet eos et lobortis.