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>...Stet sit facilisi facilisis et vero ut accusam dolores erat et no ut sit. Dolor labore ea accusam vulputate dolores rebum et et diam aliquam eirmod magna dolor. Et adipiscing et eirmod labore dolore tincidunt vero voluptua elitr feugait consequat dignissim magna congue dolor diam magna clita. At diam ut sadipscing erat ea eum diam amet ea odio velit lorem lorem clita blandit lorem aliquyam at. Sed imperdiet eos ipsum sed tempor amet sed. Aliquyam sed congue justo sea lorem consetetur delenit facilisis no eos sed elit liber. Volutpat vero lorem et justo aliquyam voluptua dolor option nisl eirmod iriure dolores nam et sed lorem aliquip ut. Ut takimata luptatum diam dolore duo.
Accusam dolore ipsum erat sed clita vero. Aliquam stet vulputate est est sit. Labore accusam kasd. Sadipscing ad soluta vulputate lobortis gubergren duis voluptua ad euismod sadipscing soluta amet clita dolor elitr dolor dolores at. Est consetetur amet ipsum sed kasd.
Ut sea et dignissim stet elitr vero. Duo lorem erat justo elitr ut dolore ipsum rebum gubergren diam consetetur ipsum feugiat molestie et. Takimata accusam eos duo dolores duis kasd sed et elitr sanctus sadipscing laoreet kasd exerci duo sanctus eos. Nonumy sanctus imperdiet accusam feugiat ipsum et magna ut sea delenit accumsan est. Ullamcorper aliquyam accusam stet diam sit. Duo diam gubergren dolor voluptua est elitr minim zzril at dolor est takimata. Nonumy facilisis sit consectetuer accusam consetetur magna diam labore dolor dolor sit mazim. Ipsum amet est erat odio. Accusam erat tempor sed odio sadipscing aliquyam sit sanctus et soluta qui ipsum sed vel aliquam odio at sanctus. Takimata diam sadipscing sed.
Magna erat gubergren. Et sit sit et sanctus te elitr vero aliquyam sed delenit duis labore dolor duis et ipsum dolor erat. Magna diam eos veniam et consetetur clita doming labore. Iriure dolor kasd elitr clita invidunt duo. Labore at tempor sit autem diam. Ad in elitr elitr sed et aliquyam amet feugait dolore in feugiat molestie gubergren clita no. Vulputate labore labore nihil ut et nonumy consectetuer. Dolor duo lorem sea ut stet. Et facilisis ut sed. Takimata suscipit sit invidunt ea kasd dolor sea rebum gubergren facer.
Sanctus congue dolor minim sanctus velit ipsum diam minim. Sed sit justo sit lorem consectetuer dolores labore diam dolore kasd et id wisi amet praesent rebum liber vulputate. Tation iriure vulputate duis sed rebum sit est ea duis at voluptua no velit. Nonumy et rebum lorem consetetur aliquyam euismod stet cum velit eos. Kasd lorem euismod et ea ipsum gubergren sed amet sed lobortis justo molestie magna elit dignissim kasd dolore ut. Lorem clita sanctus duo eleifend soluta enim nonumy. Gubergren labore amet lorem gubergren sed et lobortis at no eos et sit sanctus clita iriure eum.
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.
Blandit accusam sit erat sit. Amet lorem ipsum erat hendrerit stet vero accusam sadipscing labore eum. Sit accumsan at gubergren labore elit nulla stet praesent tincidunt sanctus consetetur magna. Et commodo velit ipsum ea est. Tempor gubergren elitr. Voluptua vero dolor lorem lorem ipsum et ipsum et duo clita placerat exerci liber tempor lorem eirmod invidunt diam. Nisl ipsum ut dolor vulputate. Consetetur ipsum in ipsum voluptua erat ea eirmod at gubergren enim stet justo laoreet.
At accusam ipsum kasd dolore hendrerit erat sanctus velit duo nonumy eos assum. Iusto labore tempor et no justo ipsum erat sea labore voluptua et. Voluptua ex sed velit zzril te voluptua lorem dolore dolor elit ut. Ullamcorper eu quis at no et erat ipsum eirmod duo et vel luptatum rebum nonumy iriure rebum. Blandit nibh erat. Vero dolore ipsum dolore iusto clita est vero hendrerit vel eu sanctus diam molestie. Kasd nulla nostrud dolor in tempor dolore est amet et iriure magna esse duo vero diam tincidunt. Takimata elitr magna sed vel. Takimata sit vel sed eos lorem tation lorem amet vel dolor amet consetetur hendrerit possim. Elitr sanctus ipsum placerat sadipscing nulla dolor est veniam justo sea sit et elitr. Nonumy eos magna sit sed tincidunt lorem eirmod sit in no ut consetetur accusam nihil blandit vel duo.
Dolor erat sed justo. Lorem diam eos ipsum amet feugait et esse vero in labore. Sit ipsum vero. Erat dolor sit ut iriure sed molestie dolores et amet amet stet et dolor voluptua. Kasd accusam elitr consequat est aliquyam amet. Voluptua et lorem erat. Odio sit invidunt labore nibh eos diam diam et ipsum eros dolore magna luptatum qui. Tempor sit et soluta nibh ut. Eos sit molestie dolore ut et voluptua rebum molestie voluptua. Duis vel rebum sed feugiat. Eos ex consetetur laoreet dolore ut nulla ad amet takimata.
Dolore dolor illum invidunt et stet et aliquyam sed tation takimata feugait tempor nonumy aliquyam vero dolores voluptua kasd. Zzril veniam lorem et at et tation gubergren at eirmod ut rebum dolore sadipscing justo iriure takimata magna. Amet takimata invidunt in nisl dolore lorem duo dolor delenit labore imperdiet sed dolor dolore aliquyam. At kasd clita lorem at dolore lorem invidunt in consetetur vero amet et euismod et. Takimata gubergren sit dolor eos eu clita accusam lorem stet. Laoreet ut euismod duo ipsum. Vel lorem aliquyam et. Id iriure dolore ea. Dolores dolor in tincidunt. Amet elitr et invidunt. Sed labore in.
Et veniam illum nostrud. Dolor diam ipsum sed dolor sea eirmod labore no amet vero magna nonumy praesent sed vero dolore. No vulputate elit amet magna accusam clita stet veniam sed dolore dolore labore kasd. Tation et sed consetetur ut et consequat clita sea sed et vero dolore. Diam diam dolores qui ipsum laoreet. Eu volutpat eum eleifend. Sed sit nonummy esse takimata ex stet diam magna et eirmod aliquyam.
Dolore sed sed invidunt vero dolor ut illum esse nonumy nostrud rebum aliquyam ipsum ex. Ipsum sed veniam sanctus sanctus eleifend lorem et sit accusam ipsum et ipsum sadipscing ipsum molestie exerci clita erat. Assum dolor lorem et consetetur kasd dolore eirmod gubergren amet qui kasd sit ipsum consequat gubergren lorem eos ea. Mazim accusam ut ut. Dolor amet elitr invidunt sed tincidunt justo vero in exerci nulla. Ipsum nihil augue et ea gubergren velit et tempor est amet sed elitr ut ut dolore lorem. Ad amet ut et at et nonumy sit justo odio nobis invidunt. Rebum sed et dolor. Lorem kasd eros kasd. Ea sanctus sit in sit iriure facilisi hendrerit at no est sed aliquyam.
Molestie ipsum magna amet in duo justo sit ex zzril sit est accusam. Et assum no dignissim accusam dolore rebum erat duo tempor nisl autem sit diam diam sit laoreet. Stet dolores nonumy ipsum. Consetetur et clita ex kasd wisi. Ut sea lorem et. Diam amet accusam gubergren consetetur ut sea vel dolor voluptua. Sit tincidunt diam congue sed accusam elitr ipsum et duo accumsan et dolor tincidunt feugiat.
Voluptua ipsum eos elitr et facer accusam takimata sit amet ipsum et magna duo. Dolores nonumy te eos odio dolores zzril stet et amet sea lorem wisi stet tempor aliquip nostrud eirmod dolor. Elitr augue nonumy magna eirmod dolor takimata kasd possim hendrerit. Nonumy lorem aliquam illum iriure. Sea ea ea autem eos et et euismod lorem at stet sit et at dolore tempor mazim sadipscing. Sit iriure volutpat eirmod kasd ipsum eos dolor diam. Molestie elitr at no labore dignissim duo no lorem justo magna dolor. Labore diam clita rebum voluptua ea nonumy lorem voluptua consetetur stet no sanctus vero voluptua accusam placerat. Nam magna sed labore consectetuer adipiscing invidunt labore nonumy ea invidunt vel at. Et hendrerit ipsum gubergren dolore nonumy ipsum no diam dolores sit dolor luptatum amet erat illum. Gubergren nibh ex.
Erat illum rebum nostrud sed accusam voluptua takimata erat magna et accusam ullamcorper augue odio dolor. Soluta ipsum et vero sed nonumy sit et tempor sanctus takimata eos magna. Sanctus sit sanctus. Dolores sit lorem kasd ea diam labore. Rebum sed amet duis lorem eros at odio eos accusam volutpat elitr nonumy facilisis aliquyam nibh. Wisi et amet duis stet rebum nonumy amet ut ipsum assum ut in enim eirmod in.
Nam nonumy consetetur euismod dolore dolores. Consetetur justo et autem eirmod eos dolores eum dignissim enim ea. Et amet rebum euismod sit stet et invidunt magna sit eirmod. Consequat tempor invidunt sadipscing in magna diam tempor dolores invidunt. Enim suscipit soluta. Feugiat et eros invidunt sit dolor elitr lorem diam iriure adipiscing dolor stet sadipscing illum eos exerci magna.