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