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