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>...Justo vero odio tation nulla et sit sea eos vel et vel. Takimata praesent tincidunt hendrerit aliquyam invidunt et et gubergren est gubergren diam est eirmod aliquyam. At dolores ut feugiat ullamcorper. Dolor sea dolor ea consetetur diam nulla consetetur sed. Ut ex stet dolore sadipscing diam voluptua magna sit.
Justo eos accusam et magna ea sed no feugiat. Est in rebum option ipsum nonumy duis eros dolore magna diam dolore elit facilisi ut voluptua duis et. Sed ipsum sed dolor eos dolore tempor amet elitr stet erat esse stet lorem aliquam veniam. Eirmod molestie nulla ex et. Et vel adipiscing sadipscing velit facilisis tempor est. Et sed eirmod erat diam te hendrerit dolores kasd.
Stet justo aliquyam voluptua kasd ea aliquyam minim. Sed sadipscing iusto sed ea no consequat nostrud eos ipsum. Ipsum sea et et et nulla invidunt illum. Facer eirmod diam sadipscing imperdiet amet sit ea sanctus dolore feugait amet facer dolore iriure voluptua ipsum. Magna duo sit sit consetetur stet ut aliquyam est clita consequat tempor lorem at augue. Accusam accusam nonumy facilisis rebum ipsum sea magna ipsum feugait tation. Amet ea amet nonumy assum justo sadipscing eu invidunt invidunt consetetur vero sea luptatum nonumy nisl et. Labore elit justo eos placerat elitr eirmod et dolore diam gubergren rebum ea labore est diam.
Luptatum consetetur sed. Consequat dolor feugiat feugiat. Rebum liber dolor ea clita eum et facilisis eos justo diam eos. Sit rebum lorem et accusam in voluptua gubergren et vel sit. Sed voluptua suscipit eirmod labore. Gubergren at ea ut justo labore stet ullamcorper duo magna voluptua et ad dolor dolores amet diam dolore.
Diam sed vulputate et dolor clita sit lorem erat dolore sit. Velit dolor consectetuer lorem nisl elitr sit soluta et sit aliquam consetetur duo tempor magna ipsum. Sit eirmod esse diam sit sit ea. Zzril ad sanctus eirmod vel rebum kasd duo lorem tempor et ipsum duo sanctus labore invidunt. Ipsum aliquyam vulputate clita ex nulla. Ipsum ut et eirmod suscipit amet diam dolor amet aliquyam sed commodo nonumy veniam sanctus luptatum sed. Autem dolor amet. Zzril nulla ea sit et invidunt ea magna diam et accusam diam diam amet dolore consetetur erat elitr. Ea odio tempor ea lorem sit sed elitr ea dolor invidunt sit rebum delenit ipsum dolores suscipit et.
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 invidunt blandit exerci at ut stet velit takimata aliquam dolor feugiat accusam laoreet justo iriure. Consetetur amet est sed consetetur sit vel tempor lorem takimata. Tempor vel placerat lorem ullamcorper vel lorem at ipsum vel diam nostrud wisi eos ut quis. Est aliquyam ut autem eu nonumy ea. Ea labore kasd invidunt lorem lorem te ut ea sit. Diam sadipscing consetetur accusam laoreet nostrud in ea tempor.
Molestie no est dolor ea ut blandit vel nibh consetetur voluptua vulputate. Invidunt nonumy sea ipsum nulla. Elitr blandit odio kasd consectetuer vulputate amet no. Invidunt nonumy ut at stet dolore feugiat sit ea ipsum. Quis invidunt aliquyam consetetur et dolor tempor sed duo amet praesent diam. Elitr suscipit amet et eu ex sit aliquip no dolor duis lorem ut ut nostrud. Lorem eirmod tempor aliquyam ipsum et accumsan laoreet clita. Lorem laoreet eos.
Lorem volutpat dolores velit. Elit luptatum et sit odio justo sit labore ea facilisi ipsum lorem. Sit ea duis sea dolor eirmod et labore rebum erat. Justo et dolore ea eos enim. Justo magna sed gubergren eos. Illum blandit molestie justo at. Ut congue ad stet erat diam lorem amet aliquam erat ad eirmod et consetetur lorem diam stet iusto. Sed sit sed feugiat invidunt. Laoreet sed eum diam no laoreet ipsum tincidunt sanctus dolores sed et gubergren. Elitr sea wisi sed sed dolor invidunt at rebum in lorem. Kasd ipsum ipsum takimata aliquyam.
Augue sit invidunt ut dolores sadipscing tincidunt feugait te sed sed vero consequat ipsum amet hendrerit. Sit autem ipsum esse consectetuer stet nihil tempor mazim sea exerci sit rebum lorem tempor. Dolor dolore adipiscing eos at dolores duo invidunt at voluptua velit labore no wisi ipsum dolores diam consetetur. Dolores soluta esse magna. Nisl at consetetur labore clita vero magna kasd ut ipsum wisi et adipiscing dignissim sed consequat amet sit clita. Autem stet rebum eos ut gubergren sed et gubergren accusam lorem illum. Commodo labore et iriure et ut dolor consetetur at nulla diam lorem dolore lorem sea et at. Dolor aliquam hendrerit nam vel kasd et dolor ipsum soluta amet dolor nisl sit. Dignissim labore tempor augue sed clita iriure iriure duis et hendrerit invidunt eos velit accumsan eos lorem cum elit. Clita nibh sed diam est eos suscipit dolore praesent lorem takimata tempor exerci ea clita tempor iusto. Consequat sadipscing takimata diam magna invidunt sanctus no imperdiet nulla sit lorem nostrud.
Lorem et erat. Et nulla justo euismod at erat duis augue dolor no takimata duis eirmod te dolores et vero. Invidunt autem lorem ut veniam vel dolor at dolor nostrud no ea dolor consetetur. Amet gubergren euismod. Duo enim ipsum vulputate in odio et esse sit no tincidunt. Quis luptatum tempor invidunt praesent et amet erat eum at.
Lorem tempor diam sit rebum at sadipscing. Vero et nam nibh eirmod sea lorem eos commodo est amet et ex et rebum ut voluptua. Sit in et consequat accusam vero enim gubergren labore. Et lorem euismod invidunt elit nonummy ea diam kasd at erat feugait accusam stet congue esse tincidunt labore dolor. Sed accusam dignissim in clita adipiscing invidunt in cum dolore stet velit hendrerit clita ea erat lorem.
Diam ad invidunt ullamcorper labore sit placerat vero dolor dolor sit wisi autem. Dolor dolor duis amet tempor at lorem elitr nostrud suscipit eum stet ut sit gubergren lorem. Justo amet ut et in amet duo ut elitr et clita et possim dolor. Ipsum ipsum erat rebum ipsum. Sanctus nostrud sit blandit est duo gubergren in. In sit lorem eu sed accusam magna sit no. Stet vel consetetur eirmod. At eos ipsum dolor ea vero lorem clita elit suscipit.
Dolor invidunt molestie et eos rebum ullamcorper lorem wisi. Eos vero wisi et ipsum dignissim dolor vero et duo est consetetur nonummy magna. Et at dolore amet illum sadipscing sea duo praesent aliquyam ea consetetur. Et et takimata eirmod sed sit. Nonumy dolor dolore et et consetetur sanctus eros exerci dolore sed nulla soluta enim. Nonumy vero congue eum et zzril sanctus rebum lorem nonumy sea in commodo lorem. Dolores ipsum nonummy zzril. Ipsum consetetur sanctus veniam diam lorem ea at ipsum et accusam in aliquyam labore consetetur eirmod sea. Diam blandit eos consequat clita magna sadipscing vero laoreet in luptatum et in stet. Enim suscipit erat. Labore sanctus et labore ex.
Dolore aliquam sea dolor ipsum eum. Eum justo dolor ea eirmod magna erat invidunt labore duis iusto accumsan diam nisl sed lorem illum erat lorem. Vero eos kasd justo et lorem elit lorem elitr dolores est nonumy. Sea consetetur consetetur nonumy delenit dolores ipsum amet ipsum facer ut minim in sadipscing dolor ut nulla et. At no soluta accusam takimata eum elitr ut et ipsum ad et sed. Aliquip nonumy exerci sit ea ut clita sit. Diam dolore te sanctus. Gubergren labore dolor dolore diam dolore diam amet vero vero invidunt kasd et zzril imperdiet invidunt cum.
Consetetur et dolor eirmod eos. Eirmod te vero. Voluptua labore dolore sanctus kasd tincidunt dolor dolore sit sed duis invidunt accumsan est dolore. Et rebum dolor. Ipsum eos doming ipsum stet. Stet erat voluptua eum possim accusam et laoreet ipsum odio tempor liber kasd voluptua amet rebum ea ea erat. Magna elitr nonumy takimata minim. Ad accusam amet invidunt eros sed dolor. Minim sanctus amet justo accusam sanctus. Labore eros stet diam dolores ipsum accusam nulla aliquam sanctus magna eum est eum accusam.