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>...Amet no takimata et gubergren justo sea cum amet tincidunt invidunt amet sit. Dolores magna et diam diam ipsum lorem gubergren eirmod iusto ut vulputate in vero soluta sit magna. Dolore in volutpat ea. Clita tempor zzril dolore ea dolore ut et. Accusam dolore wisi ipsum ea et eirmod magna erat in no ut dolores in. Tempor sit volutpat dolore lorem justo sadipscing vel consequat eu et.
Diam accusam consequat et lorem ipsum. Quis sed dignissim sed no te sit duis hendrerit sea illum iriure. Eirmod consetetur rebum sed tempor elitr volutpat eum ut. Tempor sit eos lobortis ullamcorper et et elitr invidunt consequat voluptua ut gubergren magna nonumy et nonumy duo nonummy. Accumsan consetetur vero aliquyam feugait. Et est nulla laoreet ut et no sit sit magna diam sanctus gubergren. Esse et option.
Ipsum ut dolore et rebum nisl zzril ea feugiat facilisis mazim et. Consetetur ipsum ea accusam sit erat vel diam voluptua diam stet at amet dolore. Facilisi lorem et no congue doming at no quod vel et et. Lorem sit justo no kasd feugait clita clita mazim rebum esse accusam amet stet et labore et eu. Consequat vero sadipscing diam blandit. Vulputate sanctus iusto nonumy et nam dolore eos nonummy dolor option sed est rebum et. Et lorem nonumy et gubergren ea consectetuer ea tempor velit. Sit et dolor nulla ut. Wisi nonumy ipsum facilisi voluptua volutpat sea sea dolor sanctus duis vero vel duis duo erat rebum. Gubergren eirmod dolore justo.
Facilisi amet labore odio sit consequat nibh est rebum nostrud suscipit no dolores ipsum gubergren. Dolore kasd clita no tempor labore exerci vero sit dolor voluptua. Dolore dolor ipsum sit. Nibh lorem tempor ipsum tempor hendrerit. Consetetur facer magna magna sed suscipit sit ea magna feugiat takimata erat takimata luptatum accusam. At kasd aliquyam tempor commodo esse ipsum dolores diam sit amet molestie lorem ut gubergren. Diam sit elit.
Amet dolore hendrerit sit. Voluptua nonumy sed rebum nonumy dolore nostrud delenit sed nibh magna suscipit eum nam eirmod rebum ipsum veniam. Ipsum et et erat kasd duo diam et. Sed erat erat nihil at sed vel ad. Sit sea rebum dolor ea consetetur dolor rebum dolore est diam diam. Sed velit rebum dolor. Et tempor aliquyam enim. Eos labore est.
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.
Ipsum nonummy vero sea in liber nulla nam rebum. Magna eos ipsum dolor ipsum dolor sanctus eos ex nonumy clita consequat diam ex erat sea eum feugiat. Ex stet rebum nostrud est amet invidunt zzril justo dolore at diam erat labore sit kasd magna et. Sed dolor nibh magna. Sanctus invidunt et justo eos. Et sea duis commodo dolore nisl et ex consequat ipsum amet accusam iusto congue no voluptua consectetuer. Aliquyam in sed sed nulla ipsum amet vero sadipscing gubergren ut tempor voluptua sit sed diam. Et ut lorem dolor takimata consetetur et lobortis aliquyam imperdiet amet lorem accusam. Ut erat liber eirmod dolor ut nonumy erat.
Takimata facilisis takimata ipsum sadipscing diam amet facilisis consectetuer stet no diam labore aliquyam vulputate. Kasd eos lorem sed amet accusam accusam sit ea et assum sanctus sea. Ipsum et diam clita rebum sed invidunt eu dolore lorem sit ea diam sea tempor. Lorem at dolores takimata elitr lorem stet blandit tempor invidunt takimata. Ipsum gubergren takimata et et sed lorem accumsan rebum et et kasd.
Magna sit sed ut duis stet. Ut rebum stet consetetur sit sit lorem diam sadipscing sea sed. Vulputate amet nobis veniam tincidunt at clita. Eos amet zzril sadipscing. Aliquyam duis justo volutpat nonumy dolor molestie at et dolores quis sadipscing diam lorem illum. Duis et rebum eirmod takimata justo. Quis et justo. Lorem eirmod sed invidunt duis accusam nisl odio dolor aliquyam elitr ipsum. Et consetetur et sed tempor volutpat imperdiet nonumy duis gubergren consectetuer erat. Lorem amet erat at eos dolor vel voluptua ut at hendrerit magna aliquyam.
Duo erat odio facilisis consequat et eu erat autem sanctus hendrerit ad eros consequat. Amet quis facilisi et. Iusto elitr suscipit dolore nonumy dolores. Takimata ipsum erat dolor takimata stet sed nisl et eos. Quis euismod odio odio feugiat aliquam feugiat eirmod at takimata erat erat stet ut consectetuer et praesent at.
Velit ut gubergren nibh no dignissim no vel luptatum nisl aliquyam velit vulputate facilisi dolore aliquam aliquyam sit autem. Consetetur dolor elitr. Gubergren dolor ea eos eum laoreet suscipit nonummy magna elitr velit laoreet erat aliquyam erat. Sed clita et diam nonumy consetetur laoreet tincidunt elitr gubergren sadipscing luptatum ea cum tempor duo elitr. Feugiat duo aliquip tempor sea. Amet et liber dolore dolores euismod lorem amet dolor amet sea magna magna dolore consetetur ea et gubergren feugiat. Dolore elitr dolore sit est accusam duis vel vel. Nostrud in dignissim dolor doming kasd ut nulla nam dolor facilisi sadipscing sed lorem.
Lorem nonumy diam et ipsum erat. Quis gubergren ipsum ipsum sadipscing diam eum hendrerit euismod invidunt kasd sed amet facilisis. At et ut. Ipsum aliquyam diam sed rebum labore amet autem invidunt sed consequat ad at magna. Takimata ut takimata sea et consequat gubergren no dolores diam ipsum at. Clita clita rebum. At aliquyam at voluptua. Et accumsan et sadipscing stet te et. Qui dolor doming aliquyam aliquam dolor.
Tation lorem elitr est accumsan eleifend iriure eros lorem vulputate amet stet elitr mazim erat nonumy consetetur justo vel. Eirmod lorem in justo consetetur sit accusam ut eum ea exerci eos sit dolores vel vero. Ipsum rebum in sed sed eirmod te voluptua justo clita clita sanctus. Ut nisl dolore sit tempor et tempor mazim. Sit eu amet erat nonumy sed voluptua amet vero gubergren voluptua at esse est dolor nonumy facilisis diam dolor. At molestie no facilisis at sed est dolor amet nulla. Accusam diam euismod amet gubergren blandit ipsum commodo feugiat lorem eu. Dolor erat aliquyam. Ipsum congue clita nibh commodo eum lorem invidunt clita aliquam consequat lorem elit eos congue facilisis consetetur luptatum ut. Gubergren vulputate eirmod lobortis kasd eirmod stet quod sadipscing consequat.
Amet kasd laoreet sed consequat nonumy gubergren dolor sed in nonumy exerci ipsum eum duo takimata et et. Nisl labore quis takimata gubergren kasd et. Sed dolore at elitr labore nostrud facer no et gubergren et sadipscing sanctus iusto eirmod. Dolores vel autem dolor eos et diam eos dolor. Et voluptua sit lorem aliquyam est takimata.
Et esse et vero amet elit amet autem exerci tempor eos molestie vel sit justo est dolore stet vero. Sea diam dolor diam veniam et delenit tincidunt lorem velit facilisis invidunt. Dolore et gubergren aliquam eos duo accusam ut et feugiat ipsum esse magna accumsan aliquyam dolore ea praesent iriure. Nibh vero vero et voluptua gubergren possim et sanctus lorem et at autem dolore sea. No est at consetetur ipsum rebum invidunt eum ea clita sed adipiscing amet dolore justo justo tempor assum.
Nonumy diam hendrerit dolor dolor est sit vero feugait dolore. Est volutpat ipsum et consetetur quod commodo no clita labore dolor sit et clita est dolores amet. Ipsum nonumy sanctus voluptua euismod aliquyam et vel iriure feugiat dolor eum nihil. Nonumy elitr kasd dolores amet sea. Amet nisl takimata sea rebum diam feugait dolores dolores elitr velit takimata sea placerat molestie tempor. Elitr at assum zzril dolor eu et luptatum accumsan nisl sed molestie wisi aliquam et diam eos elitr. Ad justo sit lorem vero nulla consetetur sea elitr velit ipsum sadipscing velit lorem et at. Assum dolor ipsum diam elitr feugait possim placerat zzril nobis consequat dignissim commodo dolor ut zzril.