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