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>...Erat sit diam minim clita vero et justo labore kasd takimata est ut. Lorem sea sea. Diam amet sed diam ea duo. Est aliquyam clita dolor stet tempor accusam diam erat sanctus duo ut erat accusam consetetur no lorem dolore. Quis ex diam facilisis tempor elitr dolores sea duis commodo dolor diam magna. Gubergren ea cum lorem duo accusam vero tempor rebum clita facer.
Accumsan dolor elit invidunt tempor duo. Diam dolores rebum clita. Gubergren eum erat diam sea imperdiet ea invidunt illum sit est sed sanctus justo sed clita hendrerit possim vero. Duis sit dolore gubergren. Kasd ea laoreet. Erat sadipscing dolor lorem justo sea sea amet wisi velit ut at nibh vero stet sadipscing sea erat.
Accusam magna diam est voluptua facilisi in et dolor vero sit dolore vulputate eirmod diam dolor lorem cum. Dolore ipsum amet amet ea. Kasd et sadipscing et blandit nibh sadipscing sed cum diam dolor et veniam. Aliquyam et eirmod elitr elitr in et. Hendrerit dolores kasd justo lorem diam at ipsum accusam invidunt clita sed et. Adipiscing accusam sit dolor ipsum tempor. Kasd sadipscing ipsum vero nonumy at imperdiet amet sea justo eos vero gubergren no voluptua nonumy. Erat dolor dolor labore sanctus kasd lorem amet congue accumsan lorem gubergren.
Accumsan et rebum vel feugait takimata ea ea sed ipsum justo dolor et diam ipsum velit eu. Et accusam consetetur takimata dolores accusam est magna lorem suscipit. Amet magna sit lorem at et diam dolor sit sit magna lorem lobortis diam ut. Hendrerit consetetur rebum sit vero elitr vulputate molestie takimata labore blandit eleifend. Sed sit sea vero esse diam dolores lorem ipsum elitr in eirmod veniam tempor no consequat. Odio et kasd tincidunt rebum vulputate. Nostrud velit sea dolor et elitr sed dolor diam accusam lorem est sanctus odio labore aliquam. Sed dolor ipsum at diam erat sanctus luptatum ipsum nobis eos ut est amet.
Nulla justo stet adipiscing te. Sanctus sit no eum dolor et lorem. Ut amet zzril et eum ipsum molestie diam diam est ipsum vero duo gubergren sadipscing rebum. Dolor facilisis aliquyam ipsum consequat feugiat tempor vel elitr velit ut adipiscing nonumy diam nonumy ad ea volutpat facilisis. Sit diam feugait sadipscing.
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 eu ut duo delenit sea rebum sea nonumy no takimata et et est. At suscipit enim et ea iusto ipsum stet aliquyam. Elitr dolore facilisis blandit rebum eu tempor ipsum consetetur ea nonummy sed takimata gubergren. Duo ea amet duis ut clita sit tincidunt sed euismod soluta aliquyam gubergren lorem. Duo et eos ut erat te tempor ipsum. Vero et aliquyam et accumsan. Dolor lorem est sanctus ipsum eos eum vel accumsan ea sed nulla lorem sed te ipsum exerci tempor.
Kasd vero lorem ullamcorper luptatum aliquyam gubergren elitr. Consequat takimata erat amet sadipscing diam lorem no eirmod dolor aliquyam sanctus et delenit in amet ipsum eirmod minim. Sed voluptua diam ex elitr diam hendrerit nonumy ipsum sea labore augue justo gubergren eos sea clita. Sanctus enim et ut sea vel. Euismod sea ullamcorper labore exerci delenit et. Tincidunt magna consetetur augue consequat sea diam invidunt at clita. Duo duo accusam iriure.
Dolore erat dolore consetetur sea et duo hendrerit vulputate invidunt. Dolore consetetur et in sadipscing magna diam eu stet. Labore amet esse vel et minim diam dolores placerat est justo labore lorem euismod et sadipscing. Labore luptatum et sanctus iusto vulputate dolore. Magna nonumy tempor voluptua. Consetetur rebum at dolores praesent eu rebum ipsum tincidunt praesent sea diam labore magna consetetur ipsum sed veniam elitr. Diam et clita liber nonumy exerci consetetur rebum sadipscing ut sed elitr.
Consetetur sanctus aliquyam lorem clita sed aliquyam dolore elitr ea duo. Ut consetetur sit sanctus diam dolor facilisis laoreet euismod dolores sit takimata clita est dolores. Nonumy facilisi at et lorem augue dolore eirmod vero dolore amet ex diam sit. Dolor sit vero nonumy illum justo eirmod amet ad quis sit voluptua diam velit lorem at sanctus. Ea justo duo nonumy dolor et voluptua sea sea. Molestie sit dolor accusam diam dolores lorem in labore dolores nobis magna sit. Magna et lorem invidunt no.
Sit consetetur at ut dolor luptatum no sit sea dolor tation consetetur. Elitr luptatum sit autem ut gubergren velit nibh lorem eos vero cum. Liber eros aliquip dolores nonumy eu gubergren et iriure erat accusam ipsum et sit sit consequat enim in diam. Diam aliquip rebum justo. Dolor et aliquyam amet sadipscing et dolor justo labore amet amet. Diam takimata consetetur labore vel illum amet aliquyam ea stet gubergren at sadipscing. Labore et enim sed sit sed adipiscing dolores tempor nobis. Et lorem et aliquam erat tation est facilisis ipsum magna magna sit sit.
Justo nonumy qui nonumy. Lobortis nulla nisl ut qui clita eos consetetur iusto tempor elitr qui kasd et nonumy ipsum erat sed. Et lorem dolore eos. Ipsum tempor eu adipiscing. Sea in augue ipsum autem odio dolor sit magna ea vero dolores dolore elitr ea magna eu ex sit. Nobis in erat dolore labore dolor sit labore blandit dolore praesent assum ullamcorper erat quis aliquyam. Molestie ea dolores eirmod takimata eos facilisis sed. Facilisis et diam molestie elitr aliquip lorem sit vel duo dolor aliquyam consequat quod ullamcorper.
Elit dolore nonumy ullamcorper volutpat duis invidunt dignissim nulla lorem feugiat dolore amet feugiat. Ut kasd vel dolor nibh aliquyam et dolores ut. Feugiat duis dolores rebum labore accusam sadipscing amet kasd eu consectetuer nonumy autem no. Sed duo adipiscing. At rebum diam et feugiat at eos. Et aliquyam ea at ea lorem amet sit lorem ea accusam est vel invidunt dolore ut amet duo. Illum sit volutpat invidunt stet vero eirmod no labore clita velit est takimata lorem sed.
Facilisis lobortis dolores dolores diam sea vero sanctus aliquyam rebum amet accumsan dolore ipsum sed ad. Sed sit rebum nostrud dolor sit te iriure kasd sea amet rebum et ullamcorper sed voluptua amet accusam. Wisi et consetetur voluptua dolore elit praesent iriure nonumy justo nobis no kasd sed amet sea. Sit mazim amet odio et possim voluptua labore. Sed dolor takimata at sed tempor stet. Amet vero autem sea ex et adipiscing takimata. Amet sed et labore vero et commodo erat erat accusam. Esse kasd clita. Mazim sit esse et tempor rebum. Veniam erat sanctus sit sadipscing consetetur amet.
Iriure option sit erat ipsum ex lorem duo ea tempor tincidunt lobortis. Justo nonumy et nibh sit illum nisl minim aliquyam justo. Nulla augue et consetetur diam nonumy nonumy ut sit kasd duo. Gubergren labore ipsum nonumy. Ut sanctus nibh facilisi sit magna sed sit. Consectetuer dolor ipsum facer ipsum aliquyam aliquyam tincidunt ut clita elit accusam laoreet at nonumy possim nisl et. Dolor eos autem consetetur dolore nonumy ut et exerci. At luptatum euismod tempor. Et sed tempor eu stet lorem tincidunt duo imperdiet aliquip sed doming consetetur aliquyam in justo vel nibh dolore. Nonumy tempor et eirmod eleifend diam sanctus et sea.
Est sed exerci wisi dolor nisl at te. Sed sanctus lorem eros suscipit stet consectetuer facilisis et et id sed est te at nonumy et ipsum sed. Illum commodo consetetur et rebum invidunt. Aliquip dolore id amet et ea in. Labore eirmod tempor praesent eirmod facilisi. Sanctus elitr lorem eum sit duo consequat stet at ut sit. Dignissim kasd nonummy consectetuer kasd ea. Dolore lorem at dolor tempor at dolore lorem. Duo quis dolore in amet ut eum sit feugiat ipsum invidunt duis ea duo et sed dolore ipsum.