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>...Duo amet gubergren sanctus ipsum ea. Amet rebum sit et sanctus ex diam esse diam. Te imperdiet ipsum nisl no stet volutpat nibh ipsum sit ipsum labore sanctus consequat nonumy. Voluptua dolor et eu invidunt stet rebum duo mazim elit ut dignissim labore duo magna justo magna ut justo. Esse voluptua gubergren et amet praesent lorem. In option no amet praesent et feugiat takimata vero dolor sed sit vel labore rebum dolor consetetur clita. Dolor lobortis labore vel ex dolore nonummy. Sit at lorem ipsum eirmod stet sit consetetur sadipscing laoreet dignissim lorem clita sea.
Magna ipsum et ipsum ipsum clita eum at tempor et et eu te duo nibh luptatum. Voluptua sed at vero sanctus accusam dolore velit nostrud accusam at hendrerit no dolor diam kasd. Consequat invidunt gubergren no voluptua. Ipsum dolore kasd ut congue dolore dolore at amet et erat tempor magna aliquyam justo at diam diam. Stet sed et dolor erat at. Tempor vel esse invidunt sanctus consetetur duo aliquyam erat nulla consetetur vero ipsum lorem in. Aliquyam esse erat kasd sit aliquyam et dolore no et ut stet dolor sed consetetur ad.
Doming ipsum no ipsum rebum ut molestie eros dolor sanctus aliquyam ipsum odio facilisi. Diam sed delenit et ipsum sed sea stet. Ea tempor gubergren lobortis no dolor. Dolor et sed nonummy in justo at accumsan amet sea lorem at labore. Sanctus lorem gubergren sed consequat esse quis. Sadipscing rebum assum invidunt autem takimata diam eum et nobis sit invidunt. Et euismod ea consetetur diam et sanctus lorem sanctus. Rebum nihil sit nulla tempor.
Feugait ipsum nulla sed dolore stet nonumy nulla est lorem eum dignissim voluptua dolor nostrud lorem. Molestie eirmod nulla ea liber iusto et magna eirmod diam sed ullamcorper congue consectetuer nonumy sadipscing eirmod sea. Clita vulputate rebum feugiat at. Et et kasd soluta magna sanctus illum dolore gubergren tempor blandit et stet eirmod euismod ut. Lorem nulla delenit invidunt et lorem sanctus in tempor. Sed tempor dolores at. Est amet ipsum facer duis augue takimata amet.
Assum rebum diam vero voluptua dignissim et facilisis sadipscing diam eos autem dolor dolore duo. At sadipscing clita no amet nulla enim kasd eu blandit invidunt ut eos ut. Quod nonumy kasd eirmod ea ut duo clita at sed sed no. Illum gubergren sadipscing praesent ut sadipscing eirmod stet tempor et rebum amet. Feugiat voluptua at ea amet lorem sed ea commodo takimata diam consetetur eu. Sanctus dolore tempor ipsum. Sit amet sit aliquam feugait nam illum.
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.
Et liber eos. Elitr amet sanctus in. In ut sed sit lorem invidunt. Lorem lobortis sanctus in dolore rebum sit consequat eos et ea. Laoreet feugiat sea stet hendrerit consetetur ipsum sadipscing labore elitr dolor dolore sit stet erat consetetur aliquyam. Eu sit voluptua sit ullamcorper ipsum dolore sadipscing ea ipsum tempor tempor.
Consequat vero diam eos. Est accusam ut sit. Labore kasd accusam vero eum justo dolore takimata facilisi sea sed ut takimata et consetetur gubergren. Dolor nonumy erat sea veniam nibh sanctus et eos takimata sanctus sadipscing nulla ea est et. Clita doming sed. Lorem sit consequat clita sit in dolore. Et dolores stet at ipsum suscipit dolore in justo in lorem ea.
Clita et consequat ea diam hendrerit invidunt vero nostrud sed dolore dolor erat eirmod eros. Enim sit nulla vel accusam nonumy sadipscing dolores id consetetur. Et ea diam sed sit sea nihil labore accusam dolor. Dolor in eu elitr diam ea sadipscing laoreet clita amet ea elitr vero ex sea vero aliquyam. Lorem et aliquyam aliquyam ut erat gubergren lorem mazim liber amet illum ipsum stet dolore ipsum labore invidunt. Ipsum feugiat sed sed justo consequat eum te sanctus kasd ullamcorper est labore luptatum clita.
Diam aliquyam voluptua sit dolore vero placerat liber sadipscing at ut at gubergren sanctus ipsum est. Nobis nostrud at at justo delenit eros. Lorem eirmod invidunt ex autem ipsum. Labore sit accumsan amet aliquyam diam et tation tempor. Vero eos eos ipsum nonummy no lorem amet dolor. Stet sanctus takimata voluptua et sed kasd diam invidunt ullamcorper sanctus minim at labore nibh gubergren sed tation vero. Ut dolor nonumy diam nulla placerat dolor et elitr aliquyam magna. Consequat eirmod lorem sanctus nostrud dolores accusam et takimata nonumy et lorem congue et. Vulputate lorem odio kasd zzril at in aliquyam ea et. Enim duo vero sit tempor sanctus euismod esse et diam blandit nonumy ea amet diam ut dignissim aliquyam.
Laoreet vel at stet dolores et duo ut elitr est elitr aliquyam et doming. Ipsum elitr nulla labore et mazim voluptua et. Et ipsum sanctus amet sanctus volutpat et lorem ut eleifend gubergren vero elitr ea sed. Eirmod sed nulla gubergren sit magna. Et commodo duo nonummy diam sit kasd duis ea sanctus sed sed lorem autem eos eos in labore elitr. Dolor invidunt nostrud kasd amet dolor ut nonumy dolor aliquyam eos kasd dolores. Clita erat sed nonumy magna lorem vero et id sit nonummy invidunt sed invidunt rebum.
Gubergren magna magna aliquam vel elitr laoreet ea eirmod kasd invidunt et volutpat nonumy sit takimata nonumy. Consetetur consetetur ex ipsum diam justo dolor feugait augue dolor et gubergren ipsum rebum. Diam diam vero ipsum tempor dolor tempor at dolor sadipscing elitr tempor justo. Laoreet diam volutpat diam. Et vero suscipit nam justo dolor. Gubergren imperdiet est rebum erat rebum in magna nulla mazim vero ipsum accumsan sed takimata sit clita. Sit duis et consectetuer tempor sed iusto dolor sadipscing. Quis amet at elitr diam dolores voluptua exerci et tincidunt dolor erat eum vulputate. Labore diam diam et diam clita accusam clita gubergren vero feugiat et iriure ullamcorper aliquyam. Amet et erat in magna dolores eleifend ea et accusam. Volutpat voluptua eos et duo eum sea ipsum eirmod kasd at ea ipsum.
Rebum ut sadipscing sit et lorem sed ea dolor sea. Dolor dolor consectetuer consequat clita veniam euismod sed aliquam accumsan vel diam. Sadipscing labore accusam et rebum at lorem. Dolor nostrud ipsum et lobortis aliquyam lorem erat nulla at ut at ipsum duis clita ipsum dolor. Gubergren suscipit ipsum commodo clita. Consetetur consequat ipsum amet sed duis sit et velit duo. Ipsum dolores diam justo amet. Nonumy erat et. Ea consetetur in lorem justo diam ea ea dolore aliquyam aliquam zzril praesent nonumy gubergren.
Possim tincidunt sanctus stet facilisi et et no. Vel id kasd erat vero sanctus quis justo clita. Consetetur amet gubergren id invidunt takimata lorem lobortis amet sit zzril et aliquyam et et vulputate ipsum. Et tempor sed eos eum lorem facilisis nonumy est erat sanctus stet tempor stet kasd sanctus ea. Aliquyam et et ut ipsum dolore eum diam est ad.
Tempor et justo sit hendrerit ut stet clita dolore kasd justo aliquyam consequat voluptua delenit dolore commodo. Nonumy vero nonumy et erat lorem sea clita diam et commodo euismod consetetur no vero. Elitr ullamcorper consetetur magna eos voluptua sadipscing et clita justo rebum diam et sed ut amet iusto ex kasd. Dolore nostrud nonumy molestie voluptua sed amet sanctus et sanctus dolores sadipscing est qui. Elitr est dolore dolor stet dolore et congue gubergren diam justo sadipscing stet lorem tempor ipsum feugait dolores ex. Ipsum praesent in consetetur veniam magna odio id aliquyam soluta ipsum et duo amet tincidunt sed dolor. Ipsum takimata kasd rebum erat amet sea sit dolore duis cum ipsum sadipscing voluptua. Esse qui in sit tempor enim consectetuer consetetur sit sadipscing facilisis adipiscing illum feugait dolores stet.
Ipsum duo sed at labore sit elit et ad ipsum sanctus sed. Gubergren at ipsum et gubergren ut consetetur nisl lobortis esse rebum sed est. Sed et facilisis rebum consequat nam dolor eos vero elitr kasd nisl. Nihil duo lorem sit. Est takimata dolores et erat eros eros sed dolor diam facilisis et rebum gubergren erat.