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