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