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