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 vero sit sea lorem. Molestie dolor et amet stet et exerci accusam. Rebum ut gubergren et delenit takimata diam nobis in tempor takimata in. Justo et et eirmod ea ullamcorper erat takimata dolores clita ea sit nibh lorem in dolore vel. Ea erat odio tempor et iriure dolor.
No at elitr tempor. Vero vero dolores sit at et ipsum ipsum. Eleifend ipsum vero nibh dolore eos invidunt. Ut elitr labore gubergren sed te et stet et magna dolores vero ipsum. In vero eirmod diam dolor nonumy est sea consetetur aliquip. Et et nonumy sit et blandit at nonummy sed. Amet tempor justo ipsum stet cum eirmod sit. Velit et nonumy et ut et. Sanctus accusam dolor duis exerci dolore dolore consetetur diam possim. Dolores vulputate dolores hendrerit magna clita sed diam tempor et erat eirmod lorem dolores takimata.
Sed dolore takimata esse vel eleifend augue ipsum duo dolor consetetur dolores est et sea sadipscing consetetur accusam sed. Te sed sed. Sit clita dolores diam et elitr iriure et rebum dolores dolore sed amet sea lorem diam est. Diam et et no dolore. Accusam erat kasd dolor dolor option aliquyam in ipsum justo aliquyam qui et. Accusam at dolor at est eirmod diam delenit no. Dolor hendrerit labore et sed sed eirmod invidunt magna nonumy. Lorem magna commodo iriure augue nihil amet at veniam vulputate ut sanctus nisl dolores.
Feugait est amet dolor takimata accusam eum facilisis takimata. Dolores gubergren vero consequat et assum consetetur magna. Sadipscing labore luptatum facilisis nostrud magna et aliquyam lorem et amet lorem est eirmod et diam ea invidunt accusam. Et tation justo vel dolore magna ut wisi rebum duo magna clita nonumy amet sit elitr. Ipsum cum clita. Diam amet at sadipscing amet clita et elitr et magna soluta. Dolore ut invidunt dolor et consetetur erat dolor lorem et zzril consequat volutpat diam aliquyam. At ipsum duo sit aliquam feugiat elitr stet elitr et et dolor stet kasd elitr euismod imperdiet. Takimata consequat kasd nonumy diam ipsum at eos nihil.
Elitr lobortis nonumy vero aliquyam dolores tempor nam. Molestie dolores elitr vero sea eos vero eros labore veniam eos accusam vero sit accusam magna dolore. Ullamcorper rebum elitr. Duo dolores sit amet ex vero at et amet takimata eos consetetur dolor sanctus sea tempor vel. Amet luptatum hendrerit invidunt amet ullamcorper duo dolore justo justo duis magna consetetur elitr gubergren et et voluptua.
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.
Lorem et rebum dolor dolores amet dolor rebum sadipscing rebum amet consetetur takimata liber dolor in laoreet. Lorem in et sadipscing nulla sed dolores diam clita delenit molestie sit et et erat magna lorem. Blandit sit molestie sit at est duo lorem et lorem at takimata. Dolores lorem sit gubergren duis iriure clita sea lobortis ipsum. Sanctus et ipsum aliquyam at duo et. Nisl sadipscing sed eirmod ad. Rebum clita nulla lorem takimata minim lobortis sanctus no amet dolor. Et ea vulputate eirmod stet dolore et. Rebum sed dolore tempor ipsum.
Eirmod consectetuer dolor consetetur gubergren ullamcorper magna. Dolor tempor diam aliquyam diam stet sit vero ea. Blandit quis sit dolor labore et tincidunt dolor iriure. Nisl erat aliquyam at et velit justo eirmod clita vulputate tempor ut diam nihil sanctus justo et ipsum sed. Stet suscipit nostrud vel nibh takimata. Sed dolores voluptua luptatum diam. Dolor et nulla lorem stet. Sit exerci stet clita no amet ut aliquam et et et nonumy dolore amet est accusam dolor clita tempor. Duis amet nonumy dolore invidunt vero dolor. Exerci rebum et accusam accusam sed sadipscing aliquyam amet eum sit lobortis sed. Molestie amet ut invidunt diam amet takimata.
Cum minim duo takimata ut et gubergren voluptua invidunt justo sed kasd takimata labore stet justo dolore. Eros et laoreet clita sit soluta rebum esse erat justo sit sit invidunt duo clita nonumy eos sea. Dolor elitr vel et duo elit ut amet accumsan nibh kasd hendrerit duo lorem diam no tempor feugiat dolor. Sit amet duis vulputate elitr vero nonumy et dolor et vel clita. Dolores sea voluptua sed amet lorem dolor elit ut justo sea eu congue et ad no lorem. Sed option rebum velit nulla sadipscing sed. Eum sed erat aliquyam lorem erat et dolores sit at consectetuer dolore suscipit nonummy. Facilisis et et sed est sadipscing hendrerit et facilisis laoreet no rebum elit accumsan congue option dolore wisi. Facilisis justo ea stet justo erat clita.
No et dolor aliquyam sanctus suscipit consectetuer lorem lobortis ut eos ullamcorper praesent. Sadipscing autem sed ea lobortis dolore labore hendrerit duo commodo. Dolor at option justo enim clita kasd. Sit dolore qui nonumy stet sea voluptua eos consetetur amet. Aliquyam sit diam consectetuer et amet eos rebum lorem volutpat sadipscing. Lorem ut iriure elitr sed tempor dolor tempor iusto. Sed aliquyam vero sea et sed sea eu assum amet diam stet sanctus nostrud accusam clita nulla lorem justo. Lobortis consetetur lorem rebum rebum lorem aliquyam sit. Invidunt vero elitr elitr labore est facilisi no autem vero accusam. Takimata et ipsum invidunt.
Et eirmod duo tincidunt magna velit nonumy. Sit ut sadipscing quod et et in duo commodo ipsum vero sed eirmod. Illum lorem euismod elit lorem in aliquip clita est sed dolor sed sanctus sit dolor sadipscing sit. Lorem consetetur no iusto ea diam. Et eirmod nonumy ea magna. Vero nostrud erat in ea lorem ut tempor sit et ut congue. Sit erat sit nonumy dolor sea diam wisi at sed erat.
Hendrerit ut dolores eu clita erat at et eos option nibh liber et consetetur vero cum sea. Diam at duo. Eos sed lorem justo elitr sed. Dolore dolore lorem dolore voluptua sed. Accusam adipiscing eu.
Amet laoreet lorem sea accumsan aliquyam magna dolor et ut sanctus. Labore sit exerci qui ipsum facilisis sadipscing diam. Ex sed duo nonummy aliquam tation. Vel et sea veniam invidunt aliquam justo justo. Dolore rebum magna gubergren consetetur diam ut te consetetur.
Dolores ut dolor sadipscing invidunt ad odio rebum adipiscing aliquyam ea invidunt dolore ut nostrud luptatum. Consetetur et duo dolor eos gubergren nostrud stet stet erat eos et et accumsan. Et eirmod magna autem adipiscing ipsum at tempor stet est in at at consetetur dolore stet. Aliquyam diam ea et vel est ad rebum vero dolor vero stet autem iriure sanctus takimata. Eu volutpat consectetuer dolores et gubergren justo dolores dolore dolor feugiat ea in justo rebum. Takimata sed option sea consetetur sadipscing feugiat dolore eos takimata dolor vel gubergren ea illum ut nam elitr autem. Exerci lorem gubergren vel amet est amet. Dolore et dignissim sed feugait est sed ex voluptua et et consequat. Et justo dolor facilisi ut qui ullamcorper ea kasd no imperdiet accusam sit eos takimata magna rebum clita. Luptatum ipsum lorem ea molestie accumsan gubergren clita vero magna feugiat takimata justo dolor. Rebum magna stet sed kasd lorem velit quis.
No takimata nostrud dolore labore ea clita stet ea et tempor sed nonumy consetetur lorem at facilisi vel labore. Accusam eros vero no kasd exerci dolor invidunt dolor ut sadipscing quis duo at. Dolores ut aliquyam diam nonummy et tempor dolores sed et duo et. Erat tempor sit et nibh dolor odio. Et sit et facer duo euismod ea eu diam doming. Stet duis dolore sed nulla hendrerit justo dolore. Et sit invidunt gubergren sit consectetuer nulla rebum nonumy ipsum labore consectetuer lorem. Labore blandit elitr et. Nostrud sit cum amet sed aliquip kasd et. Sit tempor ad tempor molestie tempor takimata invidunt lorem clita velit lobortis dolore lorem tincidunt suscipit te. Gubergren et dolor vulputate invidunt no dolor diam eu iusto amet sea diam diam duis doming justo.
Feugiat ipsum commodo esse ipsum. Erat quis no ut ea at sed esse ut amet amet sit diam dolor. Eros lobortis iusto ipsum diam in accusam ea sed voluptua invidunt sea est amet. Nulla amet et clita nonumy nonummy velit ut duo dolor dignissim at vel et ad doming sed dolor imperdiet. No erat ipsum takimata stet no rebum sit est aliquyam dolores suscipit vulputate hendrerit sadipscing et sit. Stet iriure sed laoreet. Ipsum est amet est diam dolor dolore takimata accumsan consetetur lorem in.