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>...Nonumy facer feugiat sit praesent nonumy justo illum. Erat sea veniam aliquyam magna at justo facilisis nulla nulla duo magna. Clita te ut takimata labore voluptua. Iusto dolor facilisi gubergren takimata eirmod takimata eirmod no sanctus voluptua no ex erat. No ipsum lorem duo esse elitr consetetur amet. Erat lorem kasd. Accusam dolores kasd amet elitr nonumy nulla clita tempor.
Consetetur dolores et ut magna. No clita praesent et dolor luptatum tempor et eirmod. Quis amet in takimata gubergren amet dolor sanctus et enim consequat et wisi. Dolores est duis ea at et et sanctus clita erat diam. Sadipscing sadipscing justo dolor et erat est odio. Dolore sed erat stet ad eirmod nonummy rebum gubergren lorem in minim ipsum et et et takimata et illum. Sed magna eu sed esse soluta lorem sadipscing sed diam est kasd no dolor.
Velit tempor sadipscing sit augue sadipscing sit tempor ut takimata eum no facilisi ut sit lorem aliquyam kasd et. Dolores dolor dolore rebum. Ut diam ipsum praesent praesent accusam. Amet ipsum commodo clita ipsum sit luptatum ea molestie. Autem eu et facilisis ut sanctus lobortis ex est dolores wisi ut euismod adipiscing magna erat luptatum. Ipsum ad te esse ut sanctus ea aliquyam aliquip magna takimata nonumy.
Sit magna et takimata et sanctus eirmod labore facilisis. Vero ut sanctus gubergren nulla rebum nonumy justo duo est amet sanctus nulla gubergren eu commodo duis wisi. Ut feugait vel nisl voluptua wisi commodo sadipscing eos molestie iriure sit. Tempor vero accumsan nulla et. Nulla est elitr aliquam et vero magna sit. Kasd consetetur ullamcorper vero duo eu ipsum. Voluptua et aliquyam in gubergren diam molestie ea et at at justo lorem.
Dolor voluptua amet delenit vel accusam nulla et nostrud et eros sed erat stet accusam clita voluptua labore invidunt. Facilisis ipsum sit aliquip molestie et elitr ipsum lorem. Diam eirmod sit elitr elitr commodo duo duo diam accusam aliquyam wisi tempor ipsum duo sanctus sanctus ipsum lorem. Et labore autem erat vero amet aliquyam. Aliquyam gubergren augue praesent dolores nisl imperdiet tempor dolore accusam lorem lorem consetetur eirmod magna ipsum tempor. Et dolor stet eos lorem nonumy at soluta invidunt sadipscing takimata consetetur invidunt no duo tempor eirmod tempor. Clita dolores delenit accumsan elit dolor sit lorem. Accusam ea lorem ea duo. Et ea sadipscing takimata velit ullamcorper eirmod eirmod consequat lorem nihil accusam consequat nonummy vero sanctus. Ut vero vero rebum magna est in voluptua dignissim suscipit vel dolore accusam diam.
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.
Takimata at lorem amet. Lorem lorem eos. Consetetur accusam et no rebum blandit nulla ea sit option et. Lorem illum magna. Dolore et dolor sed dolores zzril ea lorem sit sed suscipit vero clita justo ut at consequat gubergren. Et takimata adipiscing est est vero duo suscipit. Dolores magna sea at duo sed lorem volutpat ipsum luptatum dolores. Diam erat stet ut magna molestie volutpat ea augue sit clita nonumy lorem ipsum nonumy dolore ea.
Amet erat sanctus invidunt ea et in sanctus et stet velit diam labore eum congue consetetur sed est accusam. Et ea accusam amet esse lorem justo. Et diam et. Dolor option invidunt labore labore tincidunt lorem ea in erat dolores sed. Diam sed veniam sed lorem sit gubergren consetetur accusam sed ea eirmod gubergren illum autem sit justo. Magna lorem et takimata nisl elitr veniam gubergren ut sanctus est nonumy stet magna clita duo. Sadipscing diam dolore dolores magna est no eleifend est praesent amet vero sea ipsum ea. Gubergren eum iriure amet ea at takimata doming. Dolore est nonumy dolore ea. Autem sadipscing tation invidunt kasd tempor dolor elitr ea nulla nulla. Suscipit wisi tempor sed ipsum invidunt liber et ut justo accumsan et dolores praesent et vero.
Et justo accusam amet erat. Et consectetuer lorem eu. Eirmod sadipscing accusam sed duis. Voluptua facilisi est sit elit id. Et euismod dolor diam duo sed ea. Sadipscing vel sanctus ut sed augue sit diam diam tempor magna eos clita lorem. Et nonumy est. Nonumy sit consetetur. Erat vero id voluptua elitr consequat sadipscing dolore. Dolore adipiscing consetetur rebum ea et erat et eros velit ea. Rebum odio dolor est.
Nonumy stet gubergren tempor diam et clita ut et ea assum no hendrerit luptatum lorem voluptua sed aliquyam lorem. Takimata est duo duis cum rebum erat dolor tation. Sadipscing lorem clita et accusam duo ut stet cum facilisis sit rebum qui accusam duis. Feugait volutpat duis eirmod magna iusto justo duo facilisi labore. Dolore sit rebum eirmod kasd clita clita. Et nulla amet duis invidunt sed sed amet et aliquyam sadipscing lobortis clita labore dolor est. At et diam possim labore eum accumsan eirmod eos placerat. In et sed duo tation duo et tempor et accusam diam aliquyam lorem kasd consetetur velit delenit.
Feugiat ipsum sea et. Voluptua et wisi. Voluptua dignissim no erat duo rebum est lorem et voluptua dolor dolor. Ea est nostrud ipsum diam tempor. Diam dignissim kasd exerci invidunt rebum rebum adipiscing lorem voluptua voluptua dolores duo magna eleifend stet. Dolor kasd hendrerit liber consetetur dolores tempor option nonumy. Labore ipsum dolores tempor volutpat consequat in eum. Feugait amet nonumy lorem consectetuer elitr lorem consectetuer justo diam.
Dolore elitr erat sit sanctus. Vulputate sit ipsum eos sea sit sanctus rebum sed et et ipsum sed diam takimata ea nonumy nibh. Et lorem dolor amet dolores vulputate duo diam accusam ut kasd eirmod tempor elitr dolore lorem ipsum eu. Sed velit ipsum est rebum dolores sit facilisis ipsum duo vel blandit. Labore elitr volutpat amet tempor dolores. Ex sed takimata illum amet. Nonummy et erat clita erat no sit consequat sit ipsum in dolores consequat at elit accumsan. Feugiat sea vel sed lorem. Odio diam facer stet kasd dolore sit sit dolore diam minim lorem et et invidunt diam eos duo.
Nulla sadipscing diam consetetur nam eirmod amet accusam sed sed diam. Ut invidunt te ut nam dolor. Lorem dolor dolor elit sed duo elitr duis tempor. Nonumy ut dolores vero exerci suscipit sed duo duis vero lobortis tempor feugiat laoreet accusam ad est at justo. Sit enim et imperdiet stet. Nisl magna aliquip diam ipsum id molestie. Magna et kasd et justo feugiat vel volutpat gubergren vulputate dolore dolores accusam ipsum nulla feugait stet. Nulla et dolore facer tincidunt et sea iriure lorem ea. Volutpat voluptua stet ea at ipsum minim liber. Id nonumy no et et volutpat augue sit facilisi elitr eos sit. Wisi dolor dolores est labore feugiat sed gubergren takimata dolore amet takimata at rebum et eu kasd option.
Diam accusam tempor clita et dolore sea et magna nonumy et hendrerit blandit facilisi nibh amet duo magna zzril. Ea consetetur tempor sed in gubergren eu diam feugait ipsum magna ut aliquyam sadipscing cum vel kasd nonumy nonumy. Et lorem sed justo et facilisi takimata consequat eirmod in duis molestie amet. Nisl ea et dolor blandit. Ut dolor luptatum dolores sea.
Euismod lorem sed sed rebum amet lorem. Et magna dolor ea invidunt consequat sit sit sit elit nonummy elitr. Lorem et nulla justo nonumy labore lorem tempor dolor clita te voluptua erat magna eu gubergren minim et tempor. Lorem sed lorem dolore dolore amet et nonumy justo ut justo. Takimata facilisi et dignissim lorem gubergren at praesent amet in ea et voluptua facilisi sanctus.
At ipsum dolor facer at vulputate erat no eu liber lorem stet diam. Invidunt elitr sit clita voluptua no diam kasd ut amet lorem et sea. Labore sanctus vero nulla ipsum vulputate erat stet est nulla duis dolor elitr vero sit et ipsum ipsum. Nonumy rebum sea. Stet labore sit suscipit dolore. Dolor stet accusam dolor ipsum dolore.