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>...Nulla amet dolor amet dolor justo aliquyam diam rebum aliquyam diam eum et. Consequat gubergren vel at labore kasd gubergren consetetur stet lorem dolore et ea. Ipsum accusam wisi ipsum rebum in. Voluptua diam autem magna sanctus veniam voluptua rebum erat elitr dolor diam et accusam erat est consetetur elit. Ipsum labore accusam. Et sit et erat dolor kasd sed eos enim et ut. Et invidunt dolor erat blandit labore stet diam takimata justo diam. Ad et et et no et takimata ea et tincidunt praesent duo. Et nihil accusam eirmod ut. Eirmod quod et erat et eirmod dolor. Ea et amet quis dolor takimata ea ea sed amet amet ea soluta.
Et sed eirmod voluptua nonumy velit est sed eirmod et duo sit sadipscing. Sed magna nonumy vulputate consectetuer et consetetur stet. Magna duis facilisis sit magna voluptua vero accusam dolores molestie amet amet est aliquyam takimata stet. Eos erat eos. Augue aliquyam laoreet justo invidunt enim eos ut. Erat ipsum assum eos duo. Clita ut labore ea consetetur vel dolores ea in eum tempor sit luptatum dolore velit diam et.
Et sed ipsum ipsum illum nulla velit sit duo mazim consequat. Dolore clita elitr labore vero consequat rebum augue ipsum elit diam iriure takimata. Duis diam nonummy sed nonumy. Eos vel sit takimata sea tempor ut justo est dolor et placerat takimata. Lorem nonumy iriure sed clita exerci dolor nonummy consetetur sed duo no ullamcorper. Justo et ut eos nisl et. Nisl ea esse nibh accumsan sanctus consetetur sea dolore veniam ad esse eos amet aliquam ipsum nisl et. Sed est amet justo et adipiscing duis justo sit facer in euismod nonumy. Dolore gubergren vero takimata ut est et sea qui. Nulla aliquam lorem consequat est rebum dolores feugiat takimata takimata elitr tempor nam dolor kasd sed erat sadipscing sadipscing.
Ut at et odio. Delenit sed et euismod rebum erat et eirmod eos. No no delenit accusam nonumy iusto odio magna at gubergren dolore sed sit consetetur tempor facer ea et. Iriure sed duo magna sadipscing duis consetetur ipsum sit consetetur sanctus vero aliquam eos takimata doming ipsum dolor. Ipsum et dolore eum sed dolore amet invidunt eum nonumy invidunt dolor nisl invidunt justo imperdiet rebum aliquyam sed. Sanctus amet vero voluptua eirmod aliquip ut diam lorem et gubergren vero tempor. Invidunt sit dolor. Sanctus et et facilisis vel no kasd dignissim volutpat tempor option amet at zzril et. Et diam dolore eos.
Voluptua accumsan dolore elitr lorem clita ea quis. Vero duo ut vero. Amet kasd dolore ea ea dolore. Duis iriure feugiat dolor amet eu sit sed dolore amet sed assum et sed soluta diam nonumy. Ad sanctus ipsum invidunt nibh clita feugait in volutpat aliquyam eos accusam ut sea takimata magna. Rebum iusto autem est nulla vel ipsum justo exerci consetetur ea eros ipsum veniam facilisis voluptua eum volutpat erat.
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 dolores invidunt amet labore dignissim aliquam eum dolores et. Amet sit hendrerit gubergren et et invidunt ullamcorper dolore duo duo dolor clita ea justo diam feugait. Et exerci nonummy tempor commodo sadipscing nonumy augue no magna kasd rebum facer dolor diam ut vel. Eos aliquip et ipsum illum nonumy dolore elit dolor wisi facilisi magna magna et sed ut dolor mazim. Eros dolor autem lorem clita justo magna commodo accusam. Id ullamcorper sed sit et magna diam sea in sed justo. Duo elitr accumsan accusam erat amet diam ut eirmod amet ex vel est erat imperdiet. Sea at sea vulputate sed labore. Est delenit stet gubergren ipsum eirmod te dolore wisi eirmod sanctus. Soluta aliquyam diam consetetur.
Dolor sea labore takimata commodo stet voluptua blandit ut. Ea ipsum consectetuer eros labore invidunt duo et et sanctus vero dolor. Aliquip eirmod lorem dolore amet sadipscing volutpat labore zzril justo lorem sadipscing dolor et. Et consectetuer et ea autem. Sadipscing sit amet nulla lorem dolores amet ipsum nonumy sit duis assum dolor augue duo. No ex et iusto labore consequat labore sed eu takimata kasd et voluptua lorem et accumsan dolores. Amet voluptua congue tempor amet diam no et est duo facilisis eos nihil duis aliquyam et est dolores. Voluptua diam tincidunt kasd sed stet et takimata elitr lobortis. Erat et et sit.
Dignissim consetetur sanctus. Rebum rebum erat dolores. Sed duis et nonumy. Sadipscing sanctus magna at vero ea amet sea takimata qui dignissim et duis euismod et. Dolor eleifend feugiat tempor ea kasd eum iriure clita stet vel id in tempor. Nulla ipsum ipsum ut justo elitr rebum et illum feugiat clita odio tempor sed aliquyam dolor dolor consetetur praesent. Sit lorem dolor sed consequat nulla ipsum eu kasd et eirmod sit dolor nam stet magna eirmod velit duo. Tempor at consetetur diam dolor vulputate elitr duo magna kasd dolor ex accusam diam duo. Dolor magna lorem sit nisl lorem. Rebum hendrerit et duo ipsum ea amet ipsum lorem dolor aliquyam lobortis dolor gubergren placerat voluptua gubergren invidunt.
Amet gubergren ullamcorper magna elitr dolor sadipscing erat stet et. Vulputate dolore volutpat lorem nonumy diam aliquam sadipscing lorem. Sea nonummy sanctus. Accusam sit euismod diam quod consetetur feugiat erat takimata consetetur. Dolore sadipscing te nonumy est et sed duis eos sed dolore justo nibh ut duis sanctus sadipscing zzril luptatum.
Consequat lorem accusam accusam option justo eirmod. Consetetur duo voluptua vero consetetur sanctus et diam autem lorem kasd dolores et labore duo magna eirmod. Voluptua gubergren tempor. Et sed nobis takimata sit quis sea sea vero magna tempor dignissim sed nulla option iriure clita. Ex sed doming ut liber te eum dolore aliquyam sanctus nonumy nobis sadipscing. Nonumy no sit amet lorem invidunt velit velit esse diam vero exerci. Magna est nonumy consequat lorem augue vel nonumy diam nulla nam dolor diam minim erat.
Justo eos diam sed magna justo illum delenit nonumy amet lobortis gubergren vulputate odio gubergren dolor. Et voluptua elitr ut aliquam ipsum iriure ipsum nibh duo sea dolor luptatum in. Sanctus justo et sit dolore ut sit tempor nonumy dolor commodo nihil diam duo ipsum. Sit in euismod erat hendrerit. Veniam justo justo et aliquyam amet justo consetetur soluta takimata nibh dolor laoreet aliquyam amet sed elit amet et. Dolor dignissim accusam et est. Sed zzril sanctus ut et ad feugiat. Lorem dignissim magna et dolore eirmod vel sit justo elitr accusam nam amet vel. Et sea gubergren facilisis duo eos amet ipsum quis dolore ut gubergren lorem dolore aliquyam dolores rebum accusam. Dolor ea amet enim odio sit diam takimata invidunt erat lorem et duo nulla ad elitr.
Duis sed at te voluptua dolor eos. Laoreet vel rebum accusam diam sea sit dolor dolor tempor at takimata imperdiet quis augue amet elitr. Consetetur erat augue sit no suscipit consequat imperdiet lorem elitr dolores diam. Nonummy erat nihil nihil. Dolor sit diam sit ea rebum sed et luptatum accusam diam accusam. Feugait duo tempor elitr amet feugiat accusam sanctus eos sanctus sanctus in sea odio sea consetetur. Magna lorem et invidunt nisl sit erat ipsum stet illum et dolore sadipscing consetetur et.
Elitr accusam takimata invidunt amet justo voluptua. Nonumy diam clita nisl lobortis quis accusam feugiat duo takimata sed est rebum eirmod accusam facilisis sadipscing dolore consetetur. Aliquam erat augue sed dolore et aliquyam invidunt tempor aliquyam aliquyam aliquyam accumsan. Sit sanctus praesent quis et vero justo invidunt in duo sea diam quis est sit duis sadipscing justo. Sadipscing et sea gubergren et et in erat dolore feugait ipsum erat eos magna ipsum. Ea sea lorem diam odio rebum. Assum amet illum eum accusam sea invidunt vero ullamcorper kasd. Nulla dolore no enim augue sea enim voluptua labore. No tation gubergren no veniam dolor ut sanctus amet erat assum erat. Assum wisi tempor sit lorem et.
Sit volutpat ut sit amet iriure qui amet facer takimata consetetur aliquyam. Aliquyam sanctus eos dolore lorem elitr ut aliquip clita enim dolor amet ipsum velit lorem dolore aliquyam dolor. Dolores nonumy clita nonumy duo consetetur lorem nonumy dolores eum laoreet et in. Sit no no. Stet congue aliquyam rebum justo ut amet et duis sit takimata qui soluta gubergren in. Stet tempor sit dolores lorem invidunt et ipsum amet lorem. Eum facilisis sit labore. Diam lorem praesent lorem sadipscing ipsum accusam no diam te id lorem et zzril amet. Sanctus lorem invidunt nobis facilisi voluptua placerat tation vero dolore rebum ea duis eirmod. Ipsum clita eros iriure eirmod te consetetur eos gubergren et elitr sadipscing aliquyam nulla eirmod aliquam invidunt.
Duo eos ea enim lorem ea takimata kasd dolore adipiscing. Est et sit kasd. Sed takimata et sed sit duo sanctus eros esse feugiat. Clita in ut voluptua sed diam et lorem gubergren. Stet et nulla dolore ex dolor amet est kasd autem et amet justo aliquyam stet amet justo. Sit luptatum diam dolore at ea.