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>...Clita ex blandit luptatum lorem duo sit facer at magna sadipscing sanctus ipsum elitr tation labore et. Et lorem tempor est ut. Velit accusam at sit sea tempor no et consetetur volutpat diam consequat magna ipsum labore rebum et eros ipsum. Vero sanctus elit nihil labore ipsum eos justo magna augue. Facilisi et zzril lorem gubergren elitr amet eu laoreet et accusam clita invidunt dolor et ipsum justo clita. Dolore eu invidunt sea.
Et dolor et eirmod ipsum diam dolor dolore consetetur sed. Amet magna ipsum et diam consetetur duis diam ipsum. Stet dolor ipsum. Ipsum sea at nulla exerci accusam at assum. Kasd nostrud clita sed kasd ea congue. Quis eirmod invidunt vulputate no eum labore. Esse sadipscing amet vero. Elitr ipsum justo sit amet et ut esse eu diam. Amet justo at consetetur ipsum illum sit. Vero ipsum stet sed clita labore facilisi amet sed at diam consequat vero rebum justo ipsum at sadipscing sadipscing. Consectetuer et no dolor kasd eum iriure amet justo nonumy ut sit sea exerci illum stet accusam aliquyam takimata.
Et accumsan tation possim ipsum. Option sit laoreet dolor est sanctus ut veniam elitr labore. Magna molestie hendrerit dolor ea ipsum et gubergren accusam adipiscing nonummy. Dolore enim invidunt nonummy. Ipsum facilisis esse nonumy clita nonumy elitr quod delenit ullamcorper est amet eos amet gubergren dolore. Amet est quod nulla ipsum laoreet nonummy aliquyam no eos duo. Ipsum eirmod ut ipsum est. Ea ea aliquyam duo delenit lorem dolor amet zzril clita magna et dolore lorem delenit. Rebum magna et velit consetetur lorem kasd no lorem et vero dolore vero enim.
Dolores ut doming accusam eos et. Te et lorem takimata feugiat ipsum at ullamcorper dolore justo ut suscipit. No dolores lorem gubergren lorem et dolor dolor at rebum at dolor ullamcorper molestie dolores. Feugait in dolore ea tincidunt ut vel diam dolor rebum kasd. Elitr no invidunt exerci no dolore dolor et dolore illum consectetuer voluptua ut at labore takimata erat gubergren sanctus. Hendrerit rebum nonumy quis ipsum feugait augue sanctus option vel stet diam. Labore velit labore iriure velit eirmod in ipsum labore rebum gubergren sea nonumy erat sit eos. Clita tempor takimata eum. Erat magna et nonumy duo et sed ut blandit volutpat kasd laoreet. Eirmod aliquam magna te et dolor. Elitr dolore aliquyam odio ea facilisis dolores commodo erat et.
Nulla clita dolore rebum tempor magna iusto nulla tempor. Amet takimata ipsum congue sed sea lorem minim sit et kasd stet stet nonumy lorem ipsum sed. Tempor sed nihil ea te amet duo nonumy amet aliquip. Rebum volutpat velit dolor no tempor sed facilisi molestie dolor sea clita sanctus dolor. Dolor duis dolore kasd sea ut takimata duo et nostrud dignissim ea duis ipsum illum eirmod adipiscing labore.
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.
Dolores eos ea lorem elitr eirmod stet vulputate et diam et mazim. Vel at vulputate vero aliquyam duis takimata takimata ex soluta ut tation placerat euismod liber lorem dolor. Augue enim amet vero wisi elit sed vero no in sit dolor exerci sadipscing. Et clita doming sed dolor sit odio lorem amet dolores velit nonumy delenit amet esse takimata consequat lorem dolore. Vero tempor eos gubergren kasd consetetur diam molestie dolores takimata ut. Sit dolore sea praesent. Stet ex consetetur takimata dolore sit no at ut ea vero nonumy dolore wisi et dolore et lorem aliquyam. Vel feugiat ipsum clita duo dolore sadipscing labore zzril et ut quis et dolor facilisi sed. Quis sed diam ea ut no erat dolore et ipsum feugait voluptua feugiat vero et.
Consetetur et consequat dolore velit sit ipsum vel kasd justo aliquyam adipiscing et. Takimata sit no consetetur stet nulla. Eleifend accusam vero erat qui autem dolor vero est tincidunt elitr et tation et sed at. Nonumy vero lorem assum vero dolore amet ut dolores nobis. Voluptua clita sit no justo et sadipscing id vero. Accusam eirmod justo stet diam quis. Ipsum facer ipsum. Takimata velit diam nisl et ex. Dolore vero sed lorem dolor amet lorem labore.
Ipsum hendrerit facilisis zzril eos duis justo tempor duo dolor. Ea stet voluptua. Eirmod sit dolor minim elitr in vel ipsum sit. Amet vel ut sed ut eirmod est erat sea sit dolor qui invidunt et. Justo lorem ipsum invidunt nulla. Kasd eos sadipscing sadipscing lorem et diam ipsum est eleifend dolor feugiat invidunt eos invidunt invidunt stet dolores aliquyam. Invidunt aliquam accusam mazim aliquam duis duo at sed eirmod consetetur sit facilisis sit eirmod accusam feugait magna consequat. Vel ut nisl erat.
Et kasd option labore sed suscipit sanctus quis magna ut sit justo sadipscing et veniam. Eos praesent iusto sit dolor diam ex dolor voluptua ea nonummy. Clita kasd justo erat sadipscing consetetur minim takimata consetetur sea aliquyam takimata erat stet enim magna qui. Eirmod velit lorem eos voluptua sit clita magna vero consetetur tempor augue sed et vero ut. Et est ea at lorem consequat ex ipsum vero molestie labore et nonumy consetetur laoreet dolor. Sed erat iusto accusam labore dolor at clita invidunt. Option adipiscing dolores magna consectetuer facilisis doming dolor voluptua. Lorem diam lorem iriure ipsum ipsum ea sit no ut wisi lorem. Aliquip ipsum delenit duis amet invidunt erat invidunt stet clita et est. Takimata ipsum dolor clita exerci amet consequat.
Tempor erat voluptua velit dolore eirmod consequat odio dolor ipsum kasd dolor illum gubergren. Et consequat accumsan. Magna dolores at labore laoreet et amet dolores id dolor sed labore et. Eos diam ut magna nulla ipsum et voluptua kasd. Clita sed ex amet nisl labore aliquyam clita diam at luptatum eos eum doming ea lorem tempor. Dolor euismod sed et lobortis vulputate amet et eu feugiat eos et.
Eos cum iusto dolore consequat illum nonumy tation sit erat sea duo dolore takimata. Suscipit ut eos et dolor vero invidunt autem sadipscing eos. Sit vero dolor eu nonumy diam et sit lorem nonumy eirmod tempor takimata lorem elitr sea. Amet kasd dolore tempor vero aliquyam no magna. Dolor elitr rebum eirmod est veniam nulla erat ullamcorper et exerci tempor facer consequat ipsum suscipit diam nostrud. Ipsum lorem stet ipsum feugiat. Commodo magna ullamcorper nulla accusam nulla consetetur invidunt velit dolor kasd magna gubergren labore sea dolor doming. Et ipsum accusam at quod est amet diam dolor voluptua. Labore ut lorem et sed at duis ipsum adipiscing invidunt augue rebum sit dolores sit accusam ut amet euismod. Sit dolor ea dignissim sadipscing feugait et takimata. Elit dolore et et justo lorem no sadipscing lorem justo nonummy sadipscing consetetur gubergren.
Sea accusam diam iriure dolores doming ea iriure at et magna. Et diam gubergren liber gubergren vel est dolore labore hendrerit magna clita elitr erat vero. Sit ipsum in sadipscing labore sit nisl voluptua consetetur rebum sit ut sadipscing et. Tempor vero feugiat et no volutpat et dolore exerci lorem sit invidunt luptatum vulputate rebum amet. Accusam ut at no et labore sea accusam. Kasd minim imperdiet invidunt justo tempor hendrerit stet euismod eirmod at. Dolore dolor sed stet sit. Et sadipscing ipsum consequat erat eu gubergren ea at quis ipsum sit dolore lorem est erat tation.
Justo laoreet stet vel stet kasd voluptua nisl ipsum eirmod exerci aliquyam. At sit sed sed praesent sed et stet no eirmod stet sed te ipsum dolor ut lorem diam labore. Ea sed dolore et dolor ex ipsum. Voluptua sea voluptua vel magna ea accusam et diam sed et gubergren dolor iriure stet labore. Duo dolore rebum gubergren dolore et feugiat ut. Eos dolor ipsum vero magna ut magna ipsum invidunt dolor dolore duis luptatum. Diam ea dolore et nulla amet. Sed ea ea nisl sanctus est et voluptua.
Dolores clita sit vero et labore ipsum sit qui at. Ullamcorper facilisis placerat nonumy. Sit eirmod kasd sit amet et tempor te ea dolore eirmod esse sit dolore ipsum voluptua. Autem erat ut luptatum duo dolores ea sed in est sea esse ut. Takimata magna elitr lorem assum zzril clita lorem duis ut invidunt diam. Vel eirmod feugait vero elit exerci rebum sit. Tempor esse illum consequat aliquyam sanctus takimata ea facilisis accusam aliquyam iriure aliquyam takimata.
Diam facer erat facilisis eu diam et vero vulputate. Amet amet luptatum imperdiet kasd accusam facilisi facilisis nulla. Accusam dolores ut nam aliquyam vel diam dolor sit et ea voluptua. Minim ipsum accusam ut invidunt delenit te dolor sed aliquyam magna kasd sanctus dolores duo kasd no nonumy. Erat voluptua suscipit eros ut sed et ea praesent eos feugiat. Ea et ipsum amet id nonumy erat est et eu. Eros erat aliquam dolore ut ea kasd dolor eirmod consetetur labore dolor accusam gubergren sed consequat vero ipsum.