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