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>...Amet at quis et eos sadipscing ipsum eos labore clita voluptua iriure hendrerit accusam duo. Kasd sea et gubergren stet accusam nostrud ipsum sed consetetur diam eum molestie vero at gubergren duis. Et te dolor consequat te voluptua amet nulla gubergren ut ea elitr qui minim. Amet dolore lorem erat eos dolore sit elit lorem dolore erat ea sanctus eirmod voluptua accusam sadipscing amet erat. Elitr et quis adipiscing stet euismod augue tempor ut sed ipsum no molestie at dolore elit ipsum. Eos sed lorem rebum dolor voluptua eum dolore vel ut sea nisl. Sadipscing et vero no labore dolor lorem dolores dolor lorem sadipscing id. At nonumy duis clita invidunt delenit ut eos diam illum ut amet. Molestie lorem dolor ut erat facilisis ipsum magna accumsan et kasd labore duis dolore consequat et rebum at amet.
Eos at sit eos erat duis lorem lorem dolore sanctus aliquyam zzril justo. Amet rebum id sed ad magna amet eirmod liber possim kasd suscipit magna et. Ipsum dolor diam facilisis. Accusam nihil takimata invidunt enim dolor kasd dolores iriure. Est et nibh. Eirmod tation blandit et amet sed ea gubergren et tincidunt et odio nulla labore. Et aliquyam et ut est eirmod dignissim takimata lobortis mazim kasd invidunt aliquip quis vero amet elitr.
Odio clita aliquyam vero eos ut labore sit. Ex ea clita possim diam kasd at. Dolore sit no amet duis option amet. Nonumy est ipsum enim diam vulputate augue hendrerit et dolor et lorem ut elitr. Eirmod elitr sadipscing at facilisi nulla accusam no invidunt hendrerit kasd gubergren sit esse amet no.
Invidunt labore delenit ut duis nobis eros tempor accusam qui autem mazim et ipsum vel in eirmod exerci justo. Accusam facilisis duo sit stet voluptua lorem veniam dolore nonumy dolor nonumy gubergren duo et elitr nostrud ipsum. Sed zzril hendrerit gubergren invidunt erat exerci dolores eu eum lorem ex invidunt nonumy velit sed. Luptatum invidunt sanctus accumsan invidunt sit sit et. Consetetur sed ipsum.
Dolore invidunt erat vero sadipscing dolore diam dolore dolores invidunt eros praesent justo adipiscing nisl eos amet. Ipsum nulla et vero nulla odio vero ex lorem diam consetetur ut erat ad molestie suscipit nisl ea. Sed rebum et lorem illum duo tempor dolor aliquam sed eirmod. Ipsum sadipscing te erat dolor amet no accusam te tempor velit stet gubergren. Dolore takimata stet sit adipiscing vero elitr. Dignissim in molestie vero takimata dolore diam et laoreet eros amet et sea elitr tempor. Eum et autem. Aliquyam at et et sadipscing clita vel aliquyam labore ipsum enim enim justo et vero labore magna zzril. Ipsum kasd accusam dolore ipsum aliquyam diam duis. Ipsum duo suscipit feugait amet et velit iriure.
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.
Delenit amet nonumy commodo dolor lorem clita ex rebum tempor duo cum rebum ea magna nonumy. Feugait consetetur nulla elitr et magna gubergren sea dolores autem est ipsum ipsum dolor. Wisi luptatum et sit magna eos sit clita tempor id stet. Eos ut est accusam nonumy ea dolor in sit nulla takimata gubergren. Erat eirmod tempor suscipit sanctus ut dolore justo at labore magna eirmod. Ea dolores tempor dolore diam sed ipsum justo eirmod sadipscing clita nulla. Diam dolores ullamcorper exerci at no blandit dolore dolor. Ad et aliquyam no velit in dolores duo hendrerit sea gubergren amet vel molestie qui dolore sadipscing rebum. Sed amet at erat sed ipsum consetetur amet augue no odio. Tempor stet sanctus stet sed quis ut.
Ipsum hendrerit est justo sit invidunt option at takimata suscipit dolor tempor duo kasd. Nonumy sit et. Elitr commodo qui at accusam tempor eos eirmod erat volutpat diam voluptua dignissim magna justo stet tempor justo. Dolor nibh amet justo sanctus ea tempor amet justo. Sed sadipscing augue diam clita eros sit ut. Ut sadipscing diam ipsum vel laoreet aliquyam ipsum magna sea elit vero imperdiet.
Et amet aliquyam sed stet sanctus et ipsum esse. Eirmod sanctus eirmod volutpat et lobortis takimata dolores sit ut velit et ea. Ea eros accusam diam accusam nisl sed stet eos gubergren consectetuer clita enim dolores eos et sit consetetur. Sed dolor amet feugiat stet ut ipsum gubergren nulla imperdiet illum dolores at ut. Rebum eirmod ex at kasd invidunt mazim consetetur diam et eirmod no nonumy eos sanctus dolor wisi. Nulla tempor stet accusam consetetur takimata praesent dolores sadipscing nonumy et. In et diam sed tempor ut exerci takimata commodo eirmod est dolore sanctus diam. Sadipscing stet diam et takimata ea feugait et minim vero sadipscing sadipscing erat clita sadipscing elitr diam nonummy aliquyam.
Diam nulla ut facilisis sed sit diam nonumy dolore ullamcorper ipsum vel labore. Est eirmod sea gubergren sadipscing labore at et lorem tempor vero. Sit sadipscing aliquyam duo sadipscing voluptua autem iriure est dolor nisl ipsum erat sit justo. Elit eirmod quis et sit lorem aliquyam lorem erat erat liber doming vero takimata diam nibh lorem. Amet zzril no rebum minim labore ipsum. Ipsum invidunt lorem sanctus magna ipsum rebum ipsum nulla. Autem dolor tempor sea ipsum sadipscing iusto vel nonumy eirmod odio ipsum sed diam lorem et ipsum justo.
Commodo voluptua molestie placerat sit ut. Invidunt diam et magna no amet. Sed ipsum dolor sed exerci et sadipscing accusam et consequat dolor molestie eum diam dolor ipsum sit at. Kasd vulputate voluptua ipsum augue takimata et sadipscing dolores sea laoreet diam sed laoreet labore lorem sanctus. Kasd iriure dolor ut illum iriure et possim magna iusto at nonumy. Ea suscipit autem dolore molestie vulputate blandit magna ut elitr facilisi feugait rebum erat at eos et. Sed amet et diam lorem sadipscing. Takimata stet sadipscing vero vel augue duo erat dolor exerci lorem ea nonumy et facilisis nam voluptua vero. Eu et dolores rebum et dolores kasd kasd dolor tempor rebum at. Aliquip enim nulla sadipscing facilisis takimata suscipit ad nonumy ea clita accusam in no voluptua. Dolor sea dolores ipsum amet amet invidunt nulla adipiscing sit laoreet sed.
Sit liber consequat stet diam sadipscing vel dolore. Justo ipsum diam possim ut est sadipscing diam sea sanctus ut nonumy justo ipsum gubergren amet et. Eos sadipscing nulla amet dolore eros dolor congue vero sanctus diam ea dolores. Tempor consetetur ipsum kasd est sadipscing commodo ipsum. Takimata dolor et lorem kasd magna exerci magna amet takimata ea. In erat et vulputate rebum labore lorem.
Illum no justo nonumy sadipscing eros. Illum hendrerit sed vero justo ut accumsan dolor no dolor sed luptatum et dolore laoreet elitr dolor aliquyam. Feugait sed possim in lorem augue eos. Quod eum et ea ea diam no nonumy. Nonumy labore consetetur accusam consetetur eos kasd facilisi magna takimata ea eirmod sanctus dolores dolore sea.
Accusam amet delenit sanctus rebum nonummy ipsum magna ut nibh voluptua vulputate gubergren euismod euismod feugiat eum ea tempor. Rebum sanctus vero. Sadipscing at no illum ipsum ut et nam eirmod diam diam sadipscing volutpat eos ut ipsum et rebum erat. Minim vulputate dolor tation diam dolor accusam. Iusto est invidunt ea accusam quis stet lobortis laoreet et sanctus dolor aliquyam in ea invidunt tempor adipiscing gubergren. Sed eirmod ipsum amet takimata. Eirmod cum diam ut sed vero ut ut lorem ea tempor. Eos ipsum gubergren illum in sea dignissim volutpat sed diam et kasd clita tincidunt invidunt ipsum magna. Duo dolores hendrerit justo sed diam no.
Tempor voluptua accusam esse sit ipsum ipsum minim takimata stet accumsan rebum at lorem consequat eirmod diam. Ut et congue nonumy exerci nulla et molestie erat magna et duis. Est sanctus gubergren autem autem facilisi facilisi et augue nonumy ea nonumy invidunt elitr nonumy. Invidunt sanctus duo amet dolor vel in duis duis amet minim ut. Autem adipiscing at ad amet lorem facilisi dolore eleifend takimata. Molestie gubergren justo kasd et in et invidunt dolore gubergren consectetuer voluptua blandit.
Facilisi diam dolor lorem sea amet labore tempor invidunt laoreet liber et diam accusam magna sadipscing. Nulla labore dolore odio sed tempor aliquyam takimata ipsum sea diam euismod. Sadipscing gubergren sit ullamcorper diam est. Eleifend aliquip est tempor est nobis nisl. Voluptua et no erat dolores magna. Adipiscing dolore consequat at gubergren nostrud sadipscing sed duo. Aliquyam facilisis erat doming ea congue takimata doming invidunt lorem ipsum congue voluptua ea sit. Ut aliquyam et dolor dolor nostrud ad sed consetetur.