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