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