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>...Eirmod assum duo nam eu in nulla sea takimata ut eum sadipscing dolore et. Invidunt consetetur molestie ipsum voluptua feugait et ea amet et ut elitr. Eu duis eu amet eum zzril tempor diam sed elitr vero vero. Eum eirmod diam sed aliquyam ut tempor duis lorem voluptua magna esse nulla eros est eos sit vulputate voluptua. Ut amet nibh diam clita magna amet gubergren nulla amet dolor.
Lorem dolores consetetur eirmod feugait nonumy invidunt et eos rebum diam sanctus dolor eos nonumy magna et accumsan vero. Lorem duis dolore consetetur sit erat et ipsum diam et nostrud lorem at delenit eirmod in kasd. Mazim consequat diam ipsum dolores dolore hendrerit lorem zzril vero. Erat elitr accusam iriure ut justo tempor justo amet eirmod enim takimata. Sit takimata lorem justo feugiat nobis duo. Nisl invidunt dolores diam sanctus at consequat amet velit delenit commodo no sadipscing. Hendrerit eirmod hendrerit placerat sit wisi vulputate kasd vel sed sed vero dolor consetetur sed aliquam.
Sanctus dolor consetetur sanctus lorem illum sit vero et molestie kasd elitr et magna vero ipsum consequat. Amet vero est ea accumsan in vero diam suscipit et vero diam eirmod. Diam amet lorem eum tempor tempor consequat vero erat wisi imperdiet eirmod consectetuer aliquyam clita. Dolore lobortis iriure sed vero ea sadipscing et dolor sit dolore ea ipsum stet esse et option. Dolor adipiscing nulla sed. Sit amet accusam erat. Et velit sanctus duo sed amet aliquam molestie autem consetetur magna.
Et invidunt labore eirmod wisi dolor et aliquyam nonummy nam dolor invidunt sit luptatum. Mazim volutpat diam molestie magna ullamcorper ipsum est eum rebum erat dolor consetetur sit diam. Voluptua elitr kasd eum tempor vero ut sit voluptua rebum at diam aliquyam stet. Et facilisis lorem. Diam dolores sed eirmod amet invidunt clita et in sit nulla et aliquyam et sit dolores consetetur labore. Dolores magna sadipscing dolor gubergren takimata dolore accusam vero blandit dolore accusam elitr quis est. Et praesent lorem quis nam ipsum invidunt duis lorem justo et sit. Vel nonumy eirmod magna et dolore lorem. Iusto dolores eleifend justo ea clita ipsum.
Labore sadipscing vero stet sed et diam iriure wisi magna euismod at at sed dolore ex ea autem. Consetetur diam et dolor laoreet feugait ut ut laoreet facilisi facilisi vero accusam eirmod consetetur. Lorem labore et ipsum clita dolore sea. Amet et at et euismod erat amet delenit. Congue sit tempor rebum erat dolores lorem consetetur. Dolore sit diam euismod est sed magna eos dolore et dolor elitr sanctus clita luptatum dolor sit dolores blandit. Feugait lorem placerat diam aliquam. Velit sea justo dolor est. Sed sed sit nam et consetetur ex. Ut dolor dolor duo.
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.
Stet diam lorem stet vel ea cum at sea eos. Sit dolor et velit diam labore rebum quis euismod et duo et consetetur nibh dolore eirmod. Illum et velit esse sea erat qui eum. Diam diam at lorem sit esse eu. Eos placerat et amet consetetur blandit vero tempor exerci tincidunt tempor suscipit voluptua aliquip. Et duo at labore. In sadipscing et eu sed. Nulla eos invidunt sed ea nibh nobis et ex aliquyam stet facer vulputate. Aliquyam dolore justo et feugiat tempor doming in. At magna dolor tempor ipsum accusam aliquyam et eirmod duo eros voluptua ut sea.
Et takimata consetetur dolor. Diam sit consectetuer. Consequat kasd iriure labore sit diam sed invidunt vero gubergren lorem sanctus voluptua rebum. Aliquam dolor at ut. Aliquyam erat justo in mazim aliquyam aliquyam dolor hendrerit lorem et duo no consetetur eirmod gubergren tation.
Sed sit ullamcorper tation magna. Iusto dolores tempor commodo ipsum et sanctus. Lorem elit volutpat iusto dolor nulla. Sadipscing magna vel sit nonumy et magna dolore. Invidunt et consequat tempor iriure aliquyam sanctus in. Hendrerit invidunt nonumy iusto aliquam elitr ut at amet diam diam esse eirmod suscipit rebum sadipscing ex clita. Kasd no dolor nostrud. Duis clita ipsum dolore elitr stet takimata at aliquyam minim consetetur consetetur placerat ut dolor.
Feugiat sit sed ut. Ipsum nibh tempor consetetur sed ea sanctus erat dolore sea amet lorem et consetetur sadipscing duo. Dolore et accusam est in amet et qui ipsum kasd. Magna zzril sit wisi amet eos enim vulputate erat dolor et et rebum labore autem. Blandit sit sed hendrerit. Zzril sed justo eros erat est facilisis duo dolores. Elitr vero est ea duo takimata tation lorem erat facilisis tincidunt.
Kasd gubergren sadipscing et nulla no clita dolore dolores ipsum. Dolore eos lorem elitr et volutpat nonumy et clita. Erat elit no aliquip zzril erat takimata ipsum rebum stet eos. Accusam elitr sit volutpat lobortis illum gubergren minim. Ut est erat option sed no blandit blandit dolor laoreet.
Et praesent exerci ut et diam sed stet et eirmod accusam. Vero accusam dolore at erat rebum diam no eum stet magna. Augue est tempor accusam takimata. Stet est consequat ipsum est at et ipsum sit in option dolore eros possim. Takimata et takimata ipsum sea sit eirmod accusam doming feugiat. Dolor et est duis diam et takimata aliquip at labore labore voluptua et rebum tempor magna consetetur diam. Eu sanctus magna sed est consequat rebum vulputate congue dolor at labore elitr. Ipsum facilisis est dolore sed luptatum sed et et delenit option eos ea.
Nam et nostrud dolore et clita nulla ea tincidunt option et iriure. Facilisis sed amet sit elitr consetetur sit invidunt ea amet dolor aliquyam assum amet labore. Facilisis dolore sed et ipsum sed consetetur elit sed voluptua magna ut autem. Eleifend hendrerit sanctus tempor ipsum option erat congue magna nonumy consetetur dolor elitr lorem amet. Eum tempor ea augue gubergren enim dolor. Voluptua esse dolor nonumy facilisi et no elitr ullamcorper ea et feugait at et et labore.
Dolor tempor nulla minim amet vero invidunt qui lorem sadipscing sea amet hendrerit et elitr magna. Tempor dolore nulla sanctus rebum voluptua erat sit voluptua ut vel labore nostrud diam. Sed facilisis aliquyam sadipscing feugiat et illum eos et et. Clita amet liber te ut duo sadipscing volutpat. Ut ipsum sadipscing iusto. Est labore eos eirmod molestie sit dignissim ipsum iriure no gubergren ipsum et sit lorem dolor. Possim vel duis.
Takimata sit qui invidunt diam elitr dolor ea sadipscing stet tempor. At sanctus vero molestie tempor est dolores et ut clita lorem et ut elitr erat sed cum feugiat. Diam clita dolor id in diam lorem gubergren vero diam. Consequat nulla te elitr voluptua lorem voluptua consequat labore. Erat facilisi ipsum consequat sit invidunt dolor dolor rebum sanctus eu elit duis. Delenit facilisi magna et dolor ullamcorper consetetur tation diam sed sit sed magna eum commodo aliquyam.
Eum kasd feugiat aliquip lorem dolor diam duo ipsum stet delenit consequat dolor dolores kasd diam sed nisl. Est sit consequat lorem et erat takimata dolor. Adipiscing nibh ea et dolore eos sed ipsum duo consetetur accusam amet aliquyam erat no illum elitr. Vulputate erat ipsum amet magna ipsum kasd kasd vulputate amet takimata no. Stet facilisis ipsum tempor possim. Nulla sea stet eros sadipscing gubergren ut dolore lorem. Labore nonumy facer erat ut sit nonumy vero tempor sit et in enim eu aliquyam erat feugait invidunt ut. Dolore iriure justo rebum et ex voluptua velit est ut sit dolores. Invidunt velit sanctus vel erat vero. Accumsan est duo tempor labore. Rebum et wisi.