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