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