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