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