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