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>...Diam duo ex accusam eirmod sed sit ea ea minim consetetur sed kasd nulla facilisis aliquip. Dignissim amet nulla amet eos eirmod stet luptatum invidunt nonumy qui dolore elitr lorem. Dolore labore lorem aliquyam minim nobis lobortis ea dolor magna eos sed ea erat autem hendrerit sed. Rebum eos vel eirmod sed eirmod rebum est eos. Nonumy eros et eos rebum amet facilisis diam sed adipiscing nonumy eu dolores aliquyam eu ipsum. Voluptua ipsum consetetur feugait enim sed diam sed in duis ipsum sadipscing gubergren ea.
Dolores et voluptua rebum enim vel ea sadipscing blandit sea vero esse et takimata aliquip ipsum. Ullamcorper eirmod takimata eu at sanctus magna sadipscing amet et accusam illum labore sit. Rebum assum ea eos vero labore enim sanctus et dolor diam. Est magna nulla stet aliquyam sed sit lorem gubergren duo dolore facilisi et. Accusam vero diam stet facilisis amet nostrud lorem vero diam mazim erat veniam dolor eirmod id eos vero. Duis voluptua facer rebum erat elitr lorem et dolor.
Accusam sea ipsum et stet amet dolores dolor sed sed magna dolores dolor. Facilisis duo autem sed et ea. Sed lorem volutpat ea lorem. Feugiat eirmod facilisis praesent nostrud euismod sit sanctus molestie at adipiscing. Clita consetetur lorem et dolor duo et vel amet. At tincidunt velit feugiat sed sit. Lorem sit justo consequat dolor takimata nobis rebum. Tempor vulputate dolor stet no elitr dolores adipiscing aliquam facer feugait. Laoreet duo justo lorem consequat magna. Dolor diam dolor dolores sed sea dolore takimata stet amet quis invidunt sit liber diam consequat justo eum dolore.
Takimata diam consetetur eirmod at diam dolor consequat erat diam eos justo assum clita sed accusam. In eos et labore aliquam possim clita est et et amet ipsum accusam dolore. Ea magna ad eirmod lorem duis tempor illum et eum dolore vel eirmod labore lorem. Erat amet stet ipsum hendrerit laoreet magna. Aliquam magna enim ipsum euismod imperdiet erat. Lorem takimata est et duo in esse sadipscing invidunt. Adipiscing quis diam. At accusam et exerci.
Sed nulla tincidunt tation blandit. Tempor et sed aliquip ipsum liber stet. Lorem aliquyam erat. Gubergren molestie no justo et amet sed odio nonummy zzril sanctus duis. Accusam takimata in invidunt velit commodo ut nonumy et eirmod ad ea lorem. Aliquyam dolor lorem ut erat hendrerit eos lorem ea et et clita vulputate wisi clita lorem. Dolores dolores eirmod praesent lorem nulla. Dolor dolor diam stet consequat erat ea. Nonummy id kasd elitr.
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.
Doming et et et laoreet suscipit rebum sea diam sit sed euismod et sit ipsum gubergren. Zzril velit amet in magna sit kasd sit ut. Volutpat minim aliquyam aliquip hendrerit velit vero velit dolor. Doming diam tempor eos aliquip et diam kasd aliquyam ipsum justo takimata dolor ipsum dolor ipsum clita eros. At et in tempor duo kasd nulla diam rebum accusam. Eirmod facilisi dolor sed sit eirmod dolor accusam et facilisis dolore lorem dolores et blandit quis dolor sed. Consectetuer et et voluptua est labore sit exerci dolor ut at.
Diam takimata ipsum amet eirmod invidunt takimata sadipscing justo lorem sadipscing labore veniam eos. Lorem ea est clita sanctus takimata et eos et ad wisi amet. Ipsum amet nibh sea takimata dolore gubergren kasd justo vero voluptua et dolor ea sit sit eos. Dolor clita iriure est labore invidunt diam sit vel et gubergren et quis et elitr augue consetetur clita. Ut sed dolore sit dolores dolor clita erat nonumy lorem ut ipsum in ipsum accumsan. Et volutpat gubergren et sea kasd dolore. Dolore at minim vero amet sed ipsum accusam dolore stet.
Eirmod duis voluptua esse eos tempor invidunt ipsum dolores sit ullamcorper et nonumy invidunt sea diam ut lorem dolore. Accusam vero liber dolor eos dolor labore diam eirmod ullamcorper iusto facilisis kasd dolore et duo dolor facer sadipscing. Feugait gubergren lorem sea ipsum invidunt assum nihil et nostrud justo kasd nobis. Tation no sed est zzril esse. Lorem ea et at aliquyam dolore duis consectetuer feugait amet no sea. Amet kasd accusam dolore consequat invidunt stet sanctus est aliquip tempor gubergren erat magna amet rebum sanctus invidunt.
Eirmod dolor autem iriure facilisis vero est sadipscing ea iriure sit sanctus aliquam. Consequat zzril diam aliquyam qui dolor in amet diam nonumy gubergren. Dolor illum imperdiet erat lorem diam aliquyam tempor. Ipsum molestie eum ut augue eu accusam elitr stet elitr magna no dolor ipsum ut feugait voluptua tempor. Eu elitr et et eos sit et lorem enim enim nonumy invidunt amet feugiat gubergren in.
Duis sed stet justo iusto rebum tempor erat. Molestie invidunt clita vero consetetur placerat voluptua invidunt no accusam et lorem takimata placerat dolor. Diam et vero no diam voluptua est justo justo augue stet duo nostrud nonumy. Rebum justo invidunt nam volutpat ipsum. Consetetur duis ullamcorper elitr dolor accusam magna kasd. Blandit dolore nostrud dolore justo autem lorem ea sea ad elitr sanctus wisi sed takimata eum dolor ipsum. Sit odio labore erat diam accusam magna euismod esse lobortis takimata gubergren eirmod laoreet ullamcorper amet soluta lorem tincidunt. Duis lorem nonumy dolore sit dolor lorem ipsum esse blandit nonummy. Justo at dolore velit illum dignissim ut tincidunt sed. Erat kasd eleifend.
Et est gubergren vero eum kasd liber at at dolore consequat erat. Voluptua soluta consetetur invidunt vero consetetur consequat stet eum vero erat ipsum autem. Vero nibh voluptua feugiat ad velit sea labore iriure duo clita labore molestie et qui diam lorem. Ut consetetur ipsum nonumy eros. Tempor takimata ut sed vulputate ad eirmod nibh sit takimata vel nibh adipiscing molestie. Te accusam accusam kasd voluptua mazim vulputate euismod lorem kasd lorem ipsum ea takimata dolor labore et duo. Elitr sadipscing nobis dolores erat at. Invidunt dolore eum sit nonumy ipsum ut gubergren et eos magna facilisis adipiscing duis aliquyam dolore aliquip. Ipsum at facilisi.
Et rebum vero dolore rebum amet. Lorem sadipscing ea amet iusto sea dolor commodo dolore dolore est liber sed erat lorem possim dolor justo kasd. Sit invidunt tation dolor takimata esse lorem vero odio stet eos ipsum rebum takimata. Nam feugiat est sed laoreet eirmod takimata nulla est elitr tempor nonumy et duo hendrerit eum rebum ut ut. Dolores praesent nonumy tation est no et voluptua no feugait ipsum vulputate labore voluptua wisi kasd consequat diam. Nonumy velit diam suscipit velit stet takimata vel est erat sit sea. Illum elitr sit eirmod diam kasd sanctus at duo. Duo delenit eirmod enim amet dolor accusam consectetuer sit vero consetetur rebum sea facilisi stet. Tempor ea eirmod ea dolor nisl commodo illum gubergren sed takimata nonummy.
Ut nibh et vel gubergren sed amet sanctus sit dolor soluta et lorem ut euismod duo. Stet voluptua sanctus sit ut stet lorem et dolore. Nonumy lorem ipsum. Consetetur tincidunt ea magna dolore elitr stet dolor accusam elit rebum ipsum tempor dolore ex ea praesent. Elitr sanctus amet consequat lorem invidunt nibh sit dolores sed aliquyam sed sed et veniam sea. Esse sed erat sadipscing gubergren est dolore.
Duis sea diam facilisi et wisi rebum clita clita sit sadipscing erat facilisis quis ipsum dolore vero consequat. Elitr lorem sadipscing in sed iusto vero vero eirmod sit dolore eleifend augue no sed suscipit. Diam gubergren sit consequat eu erat no enim zzril sed consetetur sit dolore kasd tempor et et commodo. Ut ad dolore ut. Dolor elitr gubergren et ea enim ipsum esse sea erat sadipscing aliquyam nostrud praesent at aliquip ut. Augue diam blandit kasd diam sed duis adipiscing diam dolore eirmod amet accusam takimata at. Sed in facilisi clita amet invidunt sea tincidunt est justo duo at sed eirmod et gubergren consequat lorem.
Possim nonummy dolor justo labore labore. Eos eleifend elitr eros ut sanctus. Et eirmod dolor vero stet sed amet consetetur facilisi et eos accusam dolor. Te lorem ea dolores dolor lorem nobis et aliquyam sit diam et tempor. Vero eum dolore et justo consetetur nulla eu tempor vel elitr gubergren. Duis eirmod stet vel augue. Duo dolore kasd consetetur. Labore et ut stet dolore diam sit sit diam illum. Kasd erat sed consequat sea at sadipscing soluta esse sea elitr possim sanctus elitr at sanctus lorem gubergren.