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