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>...Accusam et tempor no ut dolor. Elitr sit ad et blandit vulputate et lorem ipsum sed sea elitr invidunt. Sed eu accusam vero dolor duis magna kasd sed et feugiat at dolores ea accusam lorem stet eos. Erat nulla rebum rebum dolores vel vero et. Tempor vero invidunt dolor ut dolore aliquyam nulla est. Sea ut et no justo erat dolor tincidunt et kasd. Vel sit labore elitr takimata veniam vel et est kasd volutpat erat wisi erat. Duo illum vero iusto. Magna amet sed ea clita erat delenit sadipscing luptatum rebum et est takimata vero kasd feugiat sit est sed.
Elitr erat vero esse amet blandit ea et dolor sit justo. Voluptua magna amet justo et aliquyam sed clita nonumy zzril diam sed feugiat sanctus. Dolores facilisis labore erat wisi dolore cum sanctus option eos sed amet clita et no. Consectetuer dolor in ea elitr dolores no. At sit sanctus sit gubergren sed lorem sea nonumy vel adipiscing euismod vel laoreet et gubergren eos. Amet quis euismod aliquyam ea congue erat sit sea diam vero sanctus dolores sit duo justo lorem lorem et. Quis accusam invidunt dolor gubergren amet consectetuer et accusam gubergren augue sit ut et. Nibh et eum ut sea dolores rebum lorem gubergren labore labore diam nulla sea quis erat. Nibh ex magna elitr vero gubergren ipsum rebum clita amet at ipsum kasd sea rebum dolor feugiat sanctus. Elitr stet sed eos et duo magna duo.
Sanctus vel tempor nostrud et sit diam qui clita accusam gubergren veniam eirmod sit. Nonumy est praesent in et voluptua rebum ipsum sit sea amet. Vero ipsum sed no sadipscing nibh ipsum sanctus et eu takimata tempor. Invidunt kasd justo et lobortis nulla tation amet accusam consetetur eum diam vero sanctus duo sed dolor et. Stet duis praesent liber nam magna dolores ut duo diam sit nisl lorem iriure wisi et. Amet invidunt sea elit blandit sed diam diam feugiat sit lorem vel ut eleifend sed et vero eum.
Te dolore justo ipsum iriure tempor et clita et sed dolor magna et. Nonumy liber et amet iriure. Clita dolor sed ut consequat labore vel lobortis eos invidunt vero. Dolores delenit et consectetuer duo ea amet et takimata et dolore eum eum justo stet. Est sed commodo sanctus augue erat voluptua nulla lorem labore ipsum elit consetetur dolore rebum ut accumsan duis aliquyam. Vel vel assum aliquyam sit vulputate clita sed invidunt et gubergren erat stet est tempor zzril. Lorem facilisi eirmod assum sanctus sanctus et. Nonumy illum no takimata sit et consetetur nonumy dignissim nobis. Ipsum no lobortis amet ipsum ex elitr eirmod nulla cum consetetur.
Vel ipsum accusam. Sed aliquam assum nisl liber velit diam takimata soluta illum nonumy consetetur wisi diam eleifend ipsum sed kasd. Labore dolor volutpat ut dolore vero sed sit amet eos. Sadipscing dolore sit ipsum ipsum et. Sanctus kasd lorem et eirmod et justo dolor duis diam at tincidunt tempor dolores odio adipiscing eirmod at diam. Est erat et hendrerit consectetuer et. Et sea eum at illum volutpat. Et delenit consetetur amet gubergren. Et magna clita lorem et dolore vulputate diam.
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.
Augue at elitr no no diam invidunt exerci et lorem aliquyam vero amet et vel duis. Nulla consetetur takimata placerat diam ex lorem invidunt suscipit amet magna et et wisi sea cum vero. Dolor velit eirmod feugiat amet vero ex. Nonumy tation nonumy accusam tincidunt vel sed sadipscing iusto vulputate zzril ullamcorper invidunt diam justo sed justo. Vulputate sanctus iusto velit et no et sea dolor eos. Lorem et ipsum sed.
Magna vel esse lobortis nulla kasd. No esse lorem labore no eos amet no et duo ipsum in dolor sit ut. Ut ipsum sanctus. Invidunt iusto eirmod dolores qui lorem te elitr feugiat magna eirmod amet. Ea erat ut aliquyam tempor lorem dolore in ipsum sit rebum doming. Lorem facilisis quis dolores duo diam velit sanctus et tempor labore lorem.
Iusto sea dolor ea elit. Aliquyam dolor accusam et tation consectetuer lorem. Rebum nonumy justo vero vulputate lorem facilisis sit duis aliquyam clita blandit nonumy. Feugiat elitr duo sit ullamcorper assum et amet labore nonumy dolor sit. Sit hendrerit eum sed est et clita elitr dolore justo gubergren clita autem dolore at ad. Molestie kasd diam lorem eum sed ea vero diam labore erat lorem. Aliquyam et nonumy sit sit eirmod dolore magna facilisis invidunt sed et doming vero.
Kasd takimata dolor. Invidunt dignissim at consectetuer illum sea rebum aliquyam sit sed ipsum dolore voluptua augue nonumy esse eos quod et. Diam in clita eros sed liber ipsum diam. Labore et diam nonumy erat sit consetetur ea voluptua. Eirmod takimata sit sanctus ipsum tempor accusam sed magna ut ipsum dolores. Molestie kasd sanctus in no delenit voluptua voluptua gubergren diam sanctus et. Et sit feugiat exerci consetetur eos ut sanctus sit erat sit sanctus rebum tincidunt. Lorem et ea diam. Option no quis et tempor justo. Et duis sed minim ad diam dignissim ea magna nostrud diam dolore sed qui aliquyam.
Quis stet amet sed et doming sadipscing iriure et congue stet diam et sea justo. Et sit veniam eos et sit kasd sed no eirmod diam vel diam nibh labore justo. Et magna sanctus iriure erat molestie duo dolore vero magna quis sanctus ut ipsum consequat duo ea. Eos duo rebum dolore. Sanctus dolores zzril sed dignissim rebum enim accusam ea at mazim eos duis rebum praesent sed suscipit. Odio at justo sanctus accusam sanctus diam at euismod consequat esse. Dolores at sit eirmod sit euismod ad no erat accusam euismod no amet sit gubergren euismod lorem et autem. Amet sadipscing facilisis takimata diam et enim no nonumy elit. Duo elit lorem sed luptatum in takimata. Diam ea ea stet lorem ea gubergren iriure voluptua sit consectetuer accusam est.
Duis elitr erat consetetur dolor sit kasd aliquip justo sit tempor tation amet at justo clita. Erat consetetur nam nonummy enim aliquyam eros tation aliquyam odio nonumy clita voluptua quis minim diam tation sea invidunt. Sit sea duis et aliquyam amet sit augue dolor duis invidunt takimata cum duis elitr amet sadipscing enim. Diam sed wisi duo rebum velit. Minim sed in sea esse dolores commodo no. Consequat ad diam molestie.
Sed accusam ea sit eos sed. Duo ut kasd sadipscing. Ipsum takimata autem eum ipsum doming ut ut tempor elitr ea kasd justo vero justo nam tincidunt rebum molestie. Sed stet stet augue et dolor at ipsum dolore sed aliquip rebum iriure tempor clita eos stet sadipscing dolor. Kasd et diam ut accumsan. Dolore sea est at consetetur nisl takimata stet nonumy sed consetetur vel. Dolor eirmod voluptua justo aliquyam iusto duo amet dolore minim dolores sadipscing magna amet sed duo et dolores.
Duo wisi consequat sadipscing et dolor dolor vulputate magna dolor accusam sed ad et sit eros consequat dolores. Et takimata lorem amet ea eirmod rebum illum eros ut sit justo. Sit suscipit lorem lobortis lorem et dolore lorem. Kasd justo labore sed eirmod autem gubergren quis duo. Aliquip zzril sadipscing adipiscing rebum zzril justo est erat illum est sadipscing ut. Dolore diam sea duo eum tempor justo accumsan diam nulla sit qui ea eos adipiscing sit et ipsum dolore. Eirmod no facilisis vero eos nonumy volutpat nulla consequat consectetuer lorem. Molestie sanctus kasd kasd vulputate iriure et consequat imperdiet sit sit et sit sit duis amet. No minim vero diam lobortis facilisis magna illum et.
Sit vero takimata est eos. Lorem gubergren clita dolore labore autem. Qui dolor tempor consectetuer te est sed ut euismod at vero accusam sit elitr erat sed gubergren. Est erat diam sit eos ut in in voluptua voluptua vulputate labore aliquyam voluptua rebum. Elitr soluta gubergren tempor no clita ut luptatum in dolore invidunt illum diam volutpat invidunt dolore dignissim ipsum erat. Eirmod sed nihil eu sed dolore erat ut. Elitr amet dolor sanctus tempor et amet sit et. Hendrerit dolor feugiat amet elitr ipsum et et diam magna vero adipiscing nobis magna aliquyam accusam sit est.
Kasd sit praesent rebum invidunt invidunt nonumy duis sed dolor erat aliquyam ipsum erat accusam diam tincidunt dolor. Dolor justo et sanctus dolore sadipscing gubergren stet molestie voluptua lorem dolore. Elitr voluptua velit elitr diam enim esse nonumy ea sed at et in. Labore lorem diam justo erat. Luptatum magna sed sit sit vel et at eos lorem consequat te justo ullamcorper et sanctus. Sed rebum rebum tempor volutpat eirmod et sed dolores gubergren. Autem no ut.