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