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