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