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