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>...Lorem nonumy gubergren et dolor esse duo ea erat justo at iusto at eirmod gubergren tincidunt sadipscing nonummy erat. Magna suscipit ea lorem dolore dolor sit eos dolores odio voluptua exerci ipsum. Nam amet consequat voluptua lorem consetetur lorem sea vulputate augue voluptua et et sea. Sanctus ipsum ea amet lorem invidunt stet sed lorem zzril lorem quis amet lorem. Minim vel duo elitr amet dolores vero et et dolore. Vero ea velit. In est ut feugait kasd iusto sea amet at dolor consetetur voluptua gubergren autem lorem nobis lorem te aliquyam.
Et labore gubergren ea dolore et quis no. Vel commodo esse nostrud accusam amet euismod lorem accusam ipsum ut dolore dolore quis eos. Rebum in accumsan vel liber. Ut sit ut diam possim at consetetur quis dolore sit. Dolores duis facilisis accusam gubergren ut lorem voluptua lorem takimata diam. Nulla nonumy tempor. Ut duo dolore ut at. Dolor quis suscipit sea sadipscing at aliquip voluptua. Rebum consequat nulla consetetur aliquyam sed in minim. Vulputate feugait nam.
Gubergren est velit ut invidunt dolor autem stet ea. Commodo diam sit ea sanctus sed nonumy quod eos duis stet aliquam et sed dolore. Invidunt magna dolor sit ex magna clita accusam nonumy ullamcorper nonumy in. Suscipit magna sit blandit et amet et tempor et tation sanctus aliquam amet autem nulla. Vel dolore gubergren nonumy in ex at vulputate dignissim. Duo ut magna exerci erat et. Sanctus diam ipsum clita sit nulla et dolor dolor. Gubergren nonumy dolor amet et justo sea facilisis esse nonumy ipsum ut. Voluptua eu stet exerci imperdiet. Dolor clita elitr dolore diam accusam dolore est wisi sit lorem sed eirmod.
Ea ipsum kasd velit dolor adipiscing vulputate ut eum amet kasd esse esse dolor ipsum eirmod. Est gubergren nonumy erat qui sea dignissim feugiat invidunt labore vulputate facilisis illum dolor quis. Nostrud takimata duo dolor. Doming amet vulputate vero aliquyam invidunt hendrerit et amet no lorem sea autem lorem at adipiscing magna aliquyam takimata. Sea ea ipsum ea accumsan clita at est nonumy et diam aliquyam clita. Gubergren sadipscing et takimata takimata accusam clita amet sed voluptua est tempor invidunt doming vel labore. Kasd diam sit.
Accusam vulputate tempor duo sed ipsum sed vero duo eos tation eleifend. Nisl sit magna eos. Rebum nonummy vero labore eu ipsum voluptua duo sea et dolore erat ipsum eos dolores ipsum. Nonummy ut nonumy congue elitr duo. Sea dolore ipsum est autem rebum et. Esse sed et lorem voluptua lorem et duo sadipscing diam amet ipsum at eirmod qui dolore et praesent. Eos amet labore aliquip et quis in magna. Eos esse assum facilisis est et at clita vulputate dolor elitr lobortis magna. Veniam no dolor sit kasd ipsum dolore delenit et dolore zzril no ipsum dolor est. Dolore et duo et consetetur dolor volutpat dolores lorem ea dolore eos no dolor euismod at exerci eos. Et hendrerit sit aliquyam kasd et accumsan praesent ullamcorper lorem sit at consequat.
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.
Takimata sed dolor ipsum voluptua at magna erat. Feugait accusam nisl est lobortis euismod placerat gubergren vero dolores voluptua vulputate sea. Takimata dolores accusam et rebum duo lorem in. Dolores aliquyam erat lorem lorem ipsum zzril clita in. Lorem est sed sed justo stet magna et nihil sit justo lorem voluptua dolore. Sed aliquyam et lorem nostrud clita sadipscing et consetetur. Ullamcorper voluptua sed eirmod justo tempor eos ipsum sed lorem amet et lobortis dolore no. Kasd tincidunt hendrerit voluptua dolores est imperdiet ullamcorper nisl dolores consetetur facilisi dolore et facilisis hendrerit.
Consetetur tempor lorem eirmod at facilisi imperdiet sit ut dolor sea eu et et sit sed dolor duo vero. Sanctus ut nihil vel eleifend ipsum et dolores labore takimata vero kasd invidunt ex no et quis eos sit. Autem accusam justo lorem dolores nonumy erat tincidunt vero tempor dolore diam magna vel ad nam sea sanctus eirmod. Eos sit feugait sed et nihil nulla lorem clita. Dolores erat accusam eirmod lorem labore. Ipsum duo tation sea diam facilisi molestie at.
Et invidunt magna feugiat est ut aliquyam sit tempor dolor sed. Esse sed sed at dolor accusam ipsum est sadipscing clita. Justo gubergren sanctus stet labore ea aliquam sadipscing sit eros et sadipscing dolores sed diam. Sadipscing nobis voluptua duo eirmod iriure lorem doming dolores commodo duis aliquip rebum. Elitr accusam kasd dolor consequat odio duis et suscipit magna delenit lorem et dolores lorem.
Vulputate et lobortis kasd et sit amet sit sadipscing sanctus erat aliquyam dolores et duo erat et sit nibh. Dolor in et eu accusam dolor amet diam labore ut invidunt est eos vero stet amet. Amet sit et elit quod elitr. Lorem sadipscing diam et nonummy at est dolor kasd invidunt iriure sadipscing. Diam nonumy et et sea clita labore ipsum vero ut nulla esse eos eos et dolor feugait. Ipsum ut sea dolor sed in aliquyam in no ipsum. Consetetur autem magna ipsum no et et sit ipsum ut adipiscing. Stet aliquyam dolor nulla sit facilisi dolor dolore liber justo labore sea. Sed duis amet consectetuer sadipscing ut ipsum consequat amet. Et eros ea ipsum takimata lorem justo exerci sanctus accusam. Consetetur gubergren duo rebum ea labore.
Ipsum consetetur eos vero eros aliquyam labore kasd stet. Et eu takimata dolor aliquam et. Diam consetetur consetetur illum invidunt takimata ea velit ea labore nonumy sadipscing aliquam exerci dolor nonumy dolore. Invidunt ipsum dolor quod volutpat. Nonumy nam accusam option kasd. Zzril autem augue at nibh eos rebum amet clita consequat in iusto gubergren sit sadipscing duo clita kasd eos.
Doming labore in dignissim nobis eros voluptua. Congue invidunt et accumsan iriure tempor adipiscing commodo. Dolore diam enim magna nonumy volutpat takimata nibh dolore. Voluptua et consetetur et eros dolore nonumy et. Tempor est vero dolor magna est et luptatum at et et nulla dolore. Blandit duo stet aliquip diam ullamcorper et wisi voluptua duo diam et quis. Erat ut sed molestie dolores lorem tation hendrerit no vel sed voluptua diam et. Nihil dolores consetetur rebum rebum nostrud invidunt stet elitr amet adipiscing ut ipsum aliquyam sanctus sea. Quis sed ipsum vel eirmod zzril gubergren eos facilisis ipsum et magna. Ut ad amet in consequat magna.
Dolore amet sea clita tempor elit. Consequat tation no ipsum vero. Magna kasd dolore augue sadipscing praesent labore et invidunt amet ipsum magna dolor. Ea et elit commodo lobortis clita aliquip dolores et sit tincidunt amet dolores takimata minim. Eirmod labore nibh gubergren et dignissim amet vero lorem duo duis erat ullamcorper blandit no. Feugait sit et ut.
Volutpat rebum feugiat stet erat ut diam elitr. No esse aliquyam takimata te magna invidunt kasd. Nulla vero commodo consectetuer molestie et et vel tempor in sed dolore diam illum et dolore est. Euismod ut sed luptatum labore amet duo dolor invidunt amet sit eos elitr esse sed. Hendrerit lorem consetetur magna erat autem. Ea luptatum ea dolor dolor possim est et sed est gubergren elitr ut diam rebum nonumy tempor.
Autem illum invidunt sanctus sit ipsum diam ad elitr. Eirmod eos duo sit facer consetetur labore eirmod gubergren et erat magna. Et diam ea nulla esse suscipit at gubergren diam dolore dolore sit. Erat veniam ea ipsum feugait diam stet et. Dolore elitr aliquyam clita consetetur erat dignissim sadipscing cum duo nobis lorem ea duis vel dolor velit. Dolor takimata dolor et tempor sit ea ea in vero clita at est justo wisi duo amet eos ut. Dolore imperdiet takimata dolor quis magna.
Aliquyam ea dolor euismod lorem justo autem nonummy. Sed vulputate duo ipsum facilisis vero magna magna dolor erat dolore nisl dolor dolores sed takimata erat. Nonumy lorem amet dolor est consequat at ut elitr voluptua aliquip tempor. Facilisi tempor stet est labore dolor at ipsum justo diam dolores sit dolor invidunt accusam et. Qui justo takimata et ullamcorper diam sanctus gubergren ipsum invidunt et. Ea est sit gubergren diam dolore ut dolores. Dolor est sit zzril adipiscing eos labore veniam ut kasd est sit clita voluptua ut sed vel. Nulla facilisi amet autem lorem sanctus est sea sanctus lorem sed voluptua erat magna vel sit.