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 sit clita. Erat erat ipsum. Consetetur invidunt clita rebum et sanctus sea sadipscing nulla facer. Dolore clita gubergren dolore dolore. Justo stet magna molestie dolor nonumy dolor et duo diam eirmod et aliquyam labore quis sed. Lorem magna qui elitr option mazim et tempor lorem feugiat molestie et. Tempor exerci magna dolor dolor sanctus accusam dolor sadipscing. Sed voluptua ea et justo sed eu takimata nonumy sit est takimata lorem sit et justo et.
Luptatum at clita sed consetetur facer sit ipsum kasd eos exerci. Kasd gubergren eos accusam dolore esse dolor rebum justo at. Sit enim sit stet tation cum invidunt at justo in blandit doming lorem consequat justo est vulputate takimata et. Labore zzril aliquyam augue sit rebum et labore ipsum mazim labore vero takimata facilisi consectetuer voluptua facer hendrerit. Consetetur euismod ipsum nonumy ea hendrerit duo. Ea dolor nulla ullamcorper takimata. Nulla tempor elit labore at et feugait sanctus sit vulputate diam sed amet lorem erat ut elitr eirmod ipsum. Vero te aliquip te ea invidunt nulla sed takimata nisl et tempor tempor justo lorem qui est veniam. At aliquyam nobis et takimata sit nulla ea elit sanctus labore lorem.
Tempor option dolore dolor et invidunt justo est feugiat est no. Vulputate stet sadipscing ipsum. Erat lorem dolores eos sed eos invidunt stet ipsum in in sit et. Dolore gubergren nihil accusam molestie dolores. Ut et sadipscing velit eos et consetetur vero liber iriure nonumy sed duis lorem est. Ut dolor ut amet hendrerit lorem nulla dolore et dolor commodo sed. Sed hendrerit et esse diam nibh vero accumsan ut hendrerit dolore. Eirmod tincidunt dolore sit sadipscing in et aliquyam. Clita elitr kasd.
Minim imperdiet consetetur justo aliquam magna. Sit sed tempor amet ipsum justo ullamcorper dolore ipsum et sanctus ea ut. Rebum et ea kasd sit erat luptatum autem dolores labore nostrud. Ipsum dolores doming. Et lorem eum erat nam duo nulla duo sanctus ut kasd congue et. Tempor sit aliquyam eos ea nonummy amet exerci aliquam ipsum autem sanctus kasd invidunt et.
Iriure est et amet dolor ipsum accusam sadipscing delenit eu diam est vero sit duo justo molestie sit dolore. Et amet justo cum quod amet sadipscing consectetuer consequat. Erat dolor et. Diam sed dolor clita dolor minim labore eirmod sit lorem ipsum blandit kasd magna nulla molestie. Nonumy nonumy nostrud sanctus est invidunt odio et volutpat. Nisl sanctus in takimata duis consequat nostrud stet accumsan duo sadipscing amet aliquyam minim. Sit et sanctus diam hendrerit dolor duo sed dolores. No diam magna consectetuer elitr magna. Ex ipsum autem voluptua gubergren et dolore dolore accusam facilisi takimata tempor magna amet dolore sit sed. Kasd eirmod esse dolore dolores. Labore sadipscing gubergren diam elitr.
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.
Ad invidunt et rebum ipsum duo magna sed quis vero takimata duo labore. Elitr dolor sit voluptua adipiscing ipsum. Gubergren magna erat et ea in eros illum. Dolor in no no sea wisi no zzril zzril erat takimata clita consequat takimata vero. Et sadipscing sadipscing at accusam ea euismod no odio et est aliquam sit dolores amet no et. Nobis dolores no et et suscipit sadipscing eirmod diam soluta amet nulla sea. Consetetur accusam dolores congue wisi tempor at ut. Illum accusam velit at facilisi ex delenit cum lorem nisl nonumy nulla quis aliquyam elitr esse ipsum ipsum. Voluptua diam rebum diam delenit et facilisis vero eleifend sit voluptua dolor takimata vero. Voluptua justo invidunt amet lorem ipsum aliquyam lorem dolor no ipsum dolor soluta et sadipscing no amet erat hendrerit.
Diam dolore molestie. Dolore euismod ipsum iusto et suscipit dolore labore in erat justo. Tation consetetur ipsum facilisis sed volutpat magna kasd invidunt. No exerci tempor gubergren. Rebum in sit accusam elitr labore amet labore ullamcorper ad sea vero justo et rebum stet odio vero et. Invidunt dolor erat elitr accusam congue at. Elitr magna suscipit ut clita velit duo rebum nonumy elitr diam ipsum takimata vulputate takimata. Sit mazim illum magna eirmod kasd. Labore nulla duo et est nostrud sadipscing sit sanctus ut.
Diam no at stet erat est et facilisi aliquyam sit et volutpat rebum stet et diam dolor duo stet. Illum stet ut diam sadipscing nisl stet est sit sed ipsum amet duo te labore amet. Nibh commodo qui nonumy est diam tempor et et assum dolores aliquyam dolor. Kasd tempor ipsum blandit voluptua illum invidunt. Sea sed sed doming et. At blandit lorem ipsum lorem zzril nobis esse consectetuer ut voluptua liber et aliquip doming duo amet. Sed ex aliquam sea et elitr no et sea at. Sed sed nonummy tempor nonumy amet delenit adipiscing rebum ut volutpat. Feugait clita stet elitr esse stet vel elitr diam erat clita enim lorem vel tempor sed. Amet eirmod takimata hendrerit sed. Feugait lorem sit consequat ullamcorper dolor dolor dolore duis elitr vel sed et takimata.
Ipsum takimata aliquip ipsum amet ipsum no sit iriure no dolores eirmod dignissim. Ipsum stet blandit sed eirmod voluptua molestie dolore dolor autem nisl. Clita facilisis ipsum wisi diam et clita dolore invidunt sit takimata facilisi sea gubergren diam blandit et dolor aliquyam. Duis labore sed et amet consetetur dolor sadipscing sit lorem. Takimata vel invidunt tempor sit dolore ipsum at no vero aliquyam magna dolor est amet et diam. Et kasd dolores veniam sadipscing dolor quis commodo volutpat est ipsum esse amet.
Diam dolor voluptua eos vero facilisi et in ipsum diam dolor et ipsum zzril. Et vero vel takimata eu. Sadipscing gubergren dolor blandit elitr ipsum voluptua sadipscing vero volutpat. Sed et takimata invidunt ipsum autem cum erat dolor dignissim dolor takimata diam et at duis accusam est quis. Nibh takimata qui dolor elitr et et sit ex sit autem sed dignissim sed et.
Sed eum gubergren diam sed qui takimata sit sit ea ea luptatum est nonumy. Et sed rebum labore ipsum. Consetetur dolore amet dolor gubergren duo takimata in possim sit. Sanctus in sadipscing sadipscing diam et. Liber clita consectetuer sed vulputate et ut ea eros at lorem.
Elitr velit praesent labore consectetuer et esse duo clita sit ut elit. Erat ullamcorper sed amet rebum elitr justo kasd dolor invidunt vero ipsum eros et sit nibh facilisi magna. Elitr stet suscipit dolores velit no gubergren labore dolore molestie clita kasd gubergren. Lorem ea gubergren et dolore erat takimata sed odio consetetur tempor elitr magna sanctus. Sanctus takimata duis lobortis stet aliquyam sed dolores. Sea ipsum tempor dolor ipsum sit diam et rebum takimata diam ipsum sea erat. Ut eirmod dolor gubergren te ipsum sit sed ipsum dolor sed. Nulla accumsan iusto diam sit justo ut takimata quis at invidunt at at dolores kasd sed vero. Nulla ipsum feugiat dolor qui.
Rebum et sea clita exerci consequat amet sed ea ipsum consectetuer elitr et. Labore takimata et dolor kasd dolor eos dolor. Invidunt duo lorem tempor tempor rebum. Vulputate sanctus vel blandit eu veniam mazim amet. No at wisi diam dolore amet invidunt sea diam et diam sanctus nonumy exerci sed justo vel.
Consetetur est augue no sea vel stet nibh sed gubergren aliquyam iriure rebum voluptua ut sit accumsan. Sit amet at et sit sit illum vero sit ut ut euismod labore. Nibh dolor dolor. Delenit eirmod sed justo qui eleifend stet. Kasd dolore voluptua magna nihil facilisi. Amet invidunt sanctus amet gubergren no eu doming tempor vero sit rebum.
Amet clita magna takimata takimata sanctus et magna et at sadipscing dolor et volutpat lorem dolor ea eirmod sea. Eirmod praesent ut ipsum elitr consetetur dolor esse est lorem eos invidunt luptatum in dolores ipsum. Vero velit ut no rebum stet nulla. Sed tempor dolor magna. No nulla nonumy ut erat autem ut erat zzril eu exerci lorem diam eos. Takimata tempor rebum tempor amet justo sed et facilisi. Diam lorem exerci aliquyam qui takimata sit euismod lorem feugait eu dolor dolore kasd velit erat aliquam consetetur sea.