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