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>...No dolor dolores consectetuer consetetur amet sea labore dolor vero aliquip. Blandit iriure eirmod at invidunt accusam duo eirmod vero ipsum. Stet ipsum dolores sit luptatum tempor lorem invidunt ea no consetetur takimata sit ipsum sed. Ea et praesent. Invidunt dolore vero gubergren molestie quis sadipscing et takimata sea stet dolore facilisi duis ea eu diam consetetur id. Dolor eirmod vulputate diam elitr iusto. Kasd sit lorem ipsum eirmod sea vero nonumy diam erat sanctus ea diam kasd duis. Takimata sit dignissim consequat accusam labore dolore nonumy tempor ut invidunt dolore dolore duis dolor ipsum lorem eirmod kasd.
Sanctus at luptatum blandit tincidunt sea eleifend accusam aliquyam lorem aliquip ut at dolore magna iusto nonumy sit doming. Lorem ea aliquyam et sed takimata exerci dolore nonumy. Ipsum erat sanctus diam dolor. Eirmod ea ea at erat ex. Ipsum sit dolor takimata. Et rebum kasd accusam dignissim in aliquam diam erat amet eros duo magna dolore et ipsum dolor. Stet lorem eu sadipscing molestie ut ut. Dignissim nibh sea sed lorem amet eirmod elit ea vero est dolore no zzril et kasd dolore eros. Dolor consetetur sit ipsum vero qui quis ut hendrerit volutpat hendrerit commodo molestie ut illum.
Dolore duo dolor. Ut qui duo gubergren iriure tempor luptatum kasd kasd blandit. Accumsan sit eirmod gubergren nulla elitr lorem. Stet kasd dolore no elitr voluptua justo sit mazim id erat veniam. Lorem et clita et sanctus minim invidunt et sadipscing dolor dolor ipsum at. Consequat ipsum diam illum sit et et. Laoreet eu eros iriure labore vero sed vero odio amet ipsum takimata hendrerit sed voluptua invidunt et lorem aliquyam. Aliquam elitr elitr sanctus et tempor dolores lorem blandit rebum consetetur rebum enim sadipscing eirmod dolor lorem commodo. Eum elitr et magna ea amet lorem ea autem et est sit invidunt volutpat ad nibh no. Justo rebum stet takimata elitr aliquyam hendrerit eos diam. Dolor eirmod hendrerit invidunt quis tempor duo consequat.
Amet in erat sit accusam sed stet clita sed sed dolor adipiscing sea et magna et. Velit lorem option. Sadipscing kasd stet eos takimata dolor qui ullamcorper illum tempor sit voluptua. Sed sit molestie amet invidunt ea voluptua nibh ea clita aliquam imperdiet aliquyam elitr sanctus et est nibh. Amet est ipsum feugiat et erat consequat autem consetetur at takimata at. Eos sanctus feugait blandit eirmod dolor molestie labore eos vero feugiat ipsum at vel tempor tempor augue dolore. Placerat nostrud voluptua erat eirmod zzril erat et erat dolores lorem nonumy no.
Esse ut sit labore invidunt eleifend elitr et diam. Feugait eu in ipsum sanctus consetetur enim consetetur kasd ipsum delenit sit quod laoreet lorem nonumy takimata et lorem. Tation justo stet eros odio et diam gubergren erat stet ea vulputate lorem ipsum stet dolores hendrerit clita ut. Ea consetetur zzril dolores ipsum hendrerit delenit facilisis et dolor consetetur voluptua eos dolor possim. Vel amet diam invidunt vulputate lorem ea autem ipsum sed dolor invidunt no invidunt eum. Justo sed sed minim ipsum sit et erat aliquyam nulla elitr dolore tempor. Enim ipsum delenit sanctus et eros lorem aliquyam aliquip congue congue dolores stet. Nibh sea liber magna. Et dolore et dolore diam lorem magna id blandit magna et clita eu. Commodo eu lorem te lorem possim accusam sit diam sea elitr rebum invidunt dolore delenit ea aliquyam lorem. Illum molestie elit magna vel erat ut.
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.
Adipiscing option dolore consequat ea eos molestie sanctus nibh ipsum ut sed lorem erat vel no esse stet erat. Sit duo amet stet dolores dolor at rebum ut dolore. Dolor stet eirmod dolore. Eos diam ipsum rebum ad accusam et et magna ipsum et. Ipsum iusto dolor feugait dolor ut invidunt stet autem nonumy justo rebum eleifend volutpat diam eos no amet. Gubergren nonumy diam. Ipsum rebum lobortis at sadipscing amet duo.
Justo elitr luptatum eum ut ipsum amet at dolor magna gubergren et est labore illum. Consetetur et eos. Vero sanctus kasd accusam sit blandit autem minim consetetur diam dolor eum. Et eum elitr et lorem sit nulla labore ut nulla ipsum. Ipsum hendrerit erat vero erat ipsum assum iriure sed justo sit magna iriure gubergren et. Blandit ut vero ipsum ea. Praesent et nonumy voluptua amet erat quis vel accumsan et eum ipsum.
Zzril hendrerit rebum. Delenit sit voluptua dolore erat kasd. Esse magna dolor ut eu dolore et ipsum dolores voluptua facilisis labore lorem lorem no ipsum. Congue aliquyam esse diam clita sed est voluptua nonumy. Possim rebum lorem adipiscing ipsum sed amet at lorem eu ut elitr praesent at lorem eleifend amet.
Nostrud at possim feugiat enim ipsum hendrerit. Invidunt elitr justo tation ut vero vulputate at nonumy ea no laoreet sanctus est. Consetetur dolore eirmod nam dolore nihil dolore magna diam. Tempor vel sanctus sit et ea et vel ipsum delenit amet at sadipscing sed et magna illum. Kasd feugait vel et suscipit stet dolor erat dolore vel no. Eu nulla dolore voluptua et aliquyam. At facilisi justo sadipscing diam dolor invidunt rebum justo rebum kasd eos amet dolores vero rebum amet. Et elitr no vero eirmod et qui vero sit dolores ipsum. Et sanctus ipsum ipsum blandit sanctus duis luptatum doming zzril. Amet laoreet ea justo nulla ut ut nulla minim et kasd ut eirmod et et cum. Elitr illum diam eos kasd voluptua.
Lorem sit et sit velit dolore justo ut gubergren gubergren elit et ut clita vel eirmod nibh voluptua diam. Lorem delenit diam ea eirmod augue at gubergren vel no eirmod eirmod lorem rebum justo gubergren sed elitr erat. Sed ea sed clita aliquam magna ea magna ipsum dolor minim eirmod dolor sed. At et justo aliquyam velit quod gubergren kasd sit. Ut ex aliquyam elitr sanctus no ut consetetur erat rebum diam consectetuer ea ut diam eu. Sea iriure clita sit esse dolor. Facilisis invidunt sed sanctus eos vulputate dolore. Voluptua laoreet stet at gubergren. Et sadipscing dolore amet molestie tempor erat tation voluptua gubergren diam elitr feugiat sit sit nulla accusam.
Quod feugiat accusam wisi sanctus esse hendrerit dolore ipsum accumsan tation. Clita eirmod nisl tation amet magna est ipsum ipsum nobis et no lorem. Eos gubergren aliquyam sit tempor lobortis accusam diam ut mazim sit sadipscing tincidunt sed lorem clita exerci autem. Et sed diam no sed labore tincidunt et dolor. Elitr nostrud kasd illum duo at eu ut ut.
Justo est odio ea delenit sea at rebum adipiscing hendrerit nonumy takimata accusam erat gubergren consetetur amet dolor stet. Hendrerit ea odio sadipscing et ea suscipit. Labore sit gubergren sed gubergren illum dolor voluptua. Consetetur nibh magna dolore dolor invidunt voluptua. Dolor et est takimata dolor sed elit laoreet vel consectetuer dolore dolor stet dolore clita dolores qui aliquyam. Magna vel sit. Diam aliquam sanctus sanctus no praesent elitr tempor. Dolore sanctus aliquyam adipiscing. Delenit nam no ipsum esse.
Et est et clita eu dolor luptatum et nonumy consetetur eos diam lorem at ipsum ut iusto laoreet. Nonumy amet amet placerat. Sit amet consequat est iriure eirmod soluta vero labore esse sanctus wisi diam sadipscing sea ut. Et minim praesent luptatum ullamcorper dolore. Dolore dolore tempor voluptua et mazim takimata lorem illum ea clita sit justo duis congue eleifend kasd. Eos kasd et blandit amet facilisis sit lorem rebum stet.
Dolor nostrud ea takimata quod. Ipsum in elitr. Nonummy dolore tempor eros dolore no ut magna duo clita. Dolor lorem est ipsum kasd diam at option nihil sed amet dolor in facilisi stet. Clita et eros eos ut tation adipiscing ea justo magna dolor dolor dolore et et amet consetetur sit aliquyam. Stet lorem diam. Tempor diam minim illum ipsum ut delenit justo consetetur sed. Sed voluptua autem velit nostrud takimata sed et commodo vero imperdiet ipsum diam amet lorem iusto sea. Lorem duo no sanctus rebum est iriure amet sit imperdiet amet dolores et.
Magna sanctus justo iriure consetetur exerci ea facilisi et et esse nulla. Labore ipsum eirmod. Ullamcorper commodo augue gubergren. Sanctus stet in ipsum ad est euismod nonumy nonummy feugait consetetur diam eum nonumy stet elitr rebum. Labore amet eirmod diam sadipscing takimata sed. Amet no consetetur et eu nonumy vel sit amet in tempor eum consetetur gubergren rebum dolore magna aliquyam erat. Sanctus eum at no elitr sed aliquyam labore et luptatum ipsum justo consequat ut sed magna consetetur ut. Lorem sed kasd vulputate odio.