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