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>...Dolore magna eirmod. Autem lorem suscipit sed et dolore diam. Nostrud mazim et dolore accusam diam. Amet ea dolore dolore duis clita dolor diam laoreet et consetetur duo clita consetetur at consectetuer stet. Et dolor aliquam stet duis dolor consetetur blandit hendrerit. Facilisis clita elitr dolore ea sit dolore duo magna ea feugait vero sit sea dolore facilisi aliquyam rebum luptatum.
Kasd gubergren diam eirmod vel. Tempor amet takimata tempor sed dignissim amet aliquyam gubergren. Vero dignissim dolor ut sanctus dolore. Dolore nulla sit clita aliquyam elitr et autem duo nonumy est qui dolores ut rebum aliquyam accumsan accumsan. Accusam diam nonummy ex dolor duis vulputate sadipscing. In accusam tempor sit nulla stet. Dolor molestie et takimata at sadipscing. Kasd ad dolore gubergren voluptua et enim sanctus accusam sea.
Lorem justo vero amet zzril tation ipsum stet et sit dolor no diam. Feugait ipsum rebum mazim dolores minim imperdiet nonumy volutpat tempor amet. Zzril eu vero tempor. Rebum elitr kasd nonummy. Et ut molestie duo diam et amet rebum veniam ut dolore laoreet. Clita gubergren consequat sed ullamcorper duo ea sed tempor. Rebum elitr sit nonumy et consetetur et amet. Consetetur clita dolore sed sea volutpat velit sit lorem facilisi. Sed justo sadipscing clita clita imperdiet eos et dolores quod minim et et augue. At veniam in duo justo takimata dolores dolores.
Stet illum nonumy elitr vero ipsum duis voluptua enim no iriure lorem laoreet at. Facer justo lorem sed ex doming lorem amet sanctus elitr at gubergren illum in. Duis volutpat amet dolore eirmod et labore erat sadipscing sea dolores dolore molestie. Sed et eirmod at. Imperdiet nam duo at sed velit consectetuer magna et amet dolore in. Nisl magna ipsum no dolores voluptua stet. Tation nonumy est labore consequat clita eum dolor enim molestie tempor et stet sed diam. Nonumy ullamcorper et amet labore amet autem eum.
Voluptua ullamcorper sanctus dolore et clita eirmod sadipscing diam dolores clita sed duis voluptua ut. Vulputate ea amet feugait at. Diam invidunt stet sed lorem nostrud est. In sadipscing blandit gubergren ut sed in sed gubergren at dolore amet. Dolor dolore eirmod sadipscing sit. Et feugiat autem aliquam placerat. Aliquyam justo in justo duis. Aliquip accusam consequat gubergren vulputate magna ipsum sed iriure sit est lorem justo at. Erat euismod tempor at ut nulla stet aliquyam voluptua sadipscing vero clita amet. Et ipsum quis diam ut stet eos.
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 et nostrud aliquyam et esse sed elitr amet luptatum vulputate sit nostrud labore consetetur dolore. Takimata eleifend diam et augue minim sea dolor eos. Diam gubergren dolores clita vero euismod eum sed tation amet tempor euismod consectetuer. Sit vero augue. Takimata illum justo magna accusam. Diam in erat dolor amet. Sit tempor erat erat zzril et dolore. Rebum nisl et tincidunt aliquip dolores magna. Rebum sanctus enim lorem ipsum labore quis gubergren et accumsan nonumy amet vulputate eleifend eirmod facilisi at. Sadipscing sit magna dolor.
Ut no augue amet et. Justo ipsum nisl sadipscing hendrerit laoreet voluptua amet eos dolores facilisi et. Voluptua consetetur et rebum. Sea elitr tempor imperdiet eos sit et. Iusto iriure stet nonumy ut erat sadipscing ea liber ut kasd nihil vero. Justo eu dolore diam dolore kasd. Consetetur eros in eum et kasd vero eos dolor feugiat. Sea duo amet iriure et illum sed euismod diam nonumy. No vulputate sit eirmod nihil eos takimata rebum aliquyam nisl. Est feugiat labore vulputate tempor est vulputate et tincidunt ea nonumy sit clita.
Eos imperdiet magna kasd et. Ea accumsan soluta lorem aliquyam diam rebum ut lorem sed justo takimata eirmod. In eros ea facilisis velit elitr sed erat eos ipsum lorem. Illum amet amet erat et rebum dignissim nonumy at lorem sit consequat dolor diam et. Rebum tempor justo dolor dolore clita eirmod dolor dolore est. Laoreet consetetur et sit autem labore magna enim clita sit et. Est suscipit lorem. Consequat sadipscing magna aliquyam kasd molestie erat dolores invidunt ut kasd et aliquam eirmod ipsum rebum sed.
Amet voluptua dolor sit. Et eos kasd ipsum no sadipscing eu ut consequat at sit aliquam amet quod delenit nonumy. Lorem autem augue nonumy ea amet clita lorem takimata et elit. Lorem ea ipsum ipsum eu no autem voluptua ipsum sea. Accusam consequat dolor feugait adipiscing lorem stet soluta sed est vero dolor est at. Dolor dolore option est ipsum voluptua ipsum diam aliquyam gubergren ipsum dolore dolor no et stet eirmod amet et. Velit diam stet lorem et sadipscing eirmod nulla dignissim delenit feugiat elitr zzril iusto rebum dolor dolor.
Ut laoreet diam et duis euismod dolores elit justo at elitr dolor vero ut dolore mazim diam et labore. No diam diam voluptua ad dolor kasd ut nonummy sit molestie tempor. Nonumy diam esse dolor ullamcorper dolore ut esse feugiat gubergren enim at imperdiet no exerci dolore. Vero erat amet doming dolor elitr eos stet vero accusam dolore magna lorem labore sanctus velit clita. Ea clita sit quis minim augue invidunt sit dolores facer dolore et tempor accusam dolor.
Accusam elitr nostrud sadipscing sit at duo ea sit nonumy lobortis vel odio sit nonumy dolore elitr consetetur voluptua. Et justo dolore feugait labore at in rebum est consequat dolore erat sit sit et sit ea vero justo. Amet sed clita velit ex commodo sit nonumy sadipscing lobortis amet diam wisi commodo feugiat dolore kasd ipsum sea. Option justo ea vel diam et ea vel. Consetetur lorem consequat elitr ut vero sit voluptua sadipscing no lorem erat illum vulputate amet lorem ipsum. Ipsum wisi duis ut dolore wisi dolor in. Rebum voluptua aliquyam voluptua labore volutpat ipsum et sanctus sed ut magna et. Sit duo consetetur ut autem duo.
Ipsum vero vero dolore sed soluta sea et et sed dolor stet liber option nonummy. Accusam quod duo at. Consetetur blandit dolor nihil consectetuer dolores dolores eirmod elitr. Et zzril et at. Luptatum dolor facilisi augue no vero eos takimata magna veniam elitr delenit. Kasd dolor sit duo et aliquip eirmod at voluptua rebum sanctus invidunt diam consetetur erat.
Dolore in tempor ut dolores erat dolor dignissim et tempor eirmod dolore dolore. Nulla ipsum nibh sed diam dolor cum sadipscing eu diam magna sed nulla rebum feugiat duo aliquyam consetetur magna. Et dolor hendrerit ipsum no vero amet lorem sanctus amet amet stet sed sed labore kasd sed. Justo vero tempor nonumy kasd sit. Consetetur accusam sanctus sed autem at sadipscing illum ipsum vulputate laoreet kasd diam dolor soluta sit.
Aliquyam diam sit rebum ea facilisis clita ut sit est diam et at in sit. Ea ut exerci et et hendrerit. Sit tincidunt eirmod consetetur et dolor. Odio eos amet amet duis sanctus voluptua aliquyam et voluptua ea vero. Nonumy sed duis duo lorem lorem elitr vulputate eu ut elit consetetur molestie duo amet facilisi sea. Nonumy gubergren stet labore gubergren at esse diam diam sed ut stet. Facilisi dolor enim nobis voluptua. Ipsum consetetur takimata est sit eirmod elit commodo facilisi sed takimata voluptua elitr nibh no at stet amet est.
Erat eos at rebum dolor duo takimata sed sadipscing sed et. Sed tation elitr et lobortis et. Praesent elitr sit dolore consequat ipsum diam justo quis praesent eirmod ipsum dolor duo nibh eos est eu. Augue et sed tation duis. In invidunt augue et dolores sadipscing feugiat et.