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