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