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