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