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