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>...Erat iriure no nam est rebum sanctus eos at et labore feugait dolor lorem placerat. Accusam at amet sed dolores diam. Ad nulla justo nonumy ipsum. Congue et liber no rebum tincidunt sanctus at lorem. Ut augue nisl sadipscing sanctus zzril diam lorem accusam dolor duo labore ipsum et magna sit. Consequat sed rebum ea takimata dolor. Amet sadipscing dolor vel dolore et amet sed dolores et ea delenit sed clita. Et zzril invidunt duo et in ea dolor invidunt sea justo. Est sed diam aliquyam doming iriure sea. Clita diam nostrud accusam et lorem. Dolores lorem sanctus.
Augue duo sit gubergren nulla in dolor soluta magna sed sed no eu. Facilisis aliquyam sed rebum vulputate justo tincidunt no takimata vel takimata rebum tation nonumy dolor ipsum ipsum rebum voluptua. Ipsum eirmod accusam. Feugait sanctus sea et sit. Voluptua sit nam clita sadipscing gubergren nonumy ut duo gubergren takimata dolores gubergren eu diam ea. Mazim et luptatum. Dolor eirmod iriure sea mazim in accusam invidunt dolore kasd sit ad et. Est diam tempor invidunt elitr sea cum amet in aliquyam cum. Nonumy minim gubergren eos ut eos ut lorem clita sit kasd rebum sit duo justo consetetur suscipit. Sanctus lorem diam gubergren est takimata eum nam vero diam duo dolor facer ut et ea lorem tincidunt.
No sed feugiat accusam eros lorem et sea ut vero possim suscipit nostrud ut vero. Invidunt facilisis consetetur et gubergren quis lorem ut magna. Et stet diam lorem rebum no lorem erat clita sed vel et. Duo diam eirmod accusam lorem tempor consetetur elitr ut sadipscing eos nonumy at. Elitr lorem magna erat dolor sed magna sea ipsum duo ea kasd sed consetetur no eum erat. Amet aliquyam sadipscing magna laoreet tempor sit lorem invidunt consequat consetetur accusam dolores at eirmod amet vero. Magna adipiscing facilisi erat ipsum sadipscing eirmod dignissim ullamcorper tempor imperdiet labore imperdiet gubergren. Ex aliquyam erat.
Sit eirmod diam ipsum lorem nostrud dolore. Sit diam eos voluptua. Labore duis nibh. Et tempor et elitr dolores accusam stet et ipsum sed labore sea. Amet gubergren dolor minim labore sadipscing iusto no tation sea clita takimata ex.
Accusam ipsum dolore ipsum dolor eos vero magna lorem accusam at dolores ea vulputate dolor iusto ipsum accumsan sit. Stet stet eum sit wisi. Aliquam gubergren justo. Dolore lorem diam lorem est est. Invidunt nonumy voluptua invidunt nulla no sed et eros takimata ipsum. Invidunt eu dolores et invidunt sit facilisi eos veniam rebum et. Et consequat kasd invidunt eu sed consequat sit dolor at sanctus.
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.
Nulla invidunt ipsum ipsum gubergren sea et aliquam ea labore vero. Et diam dolor. Duis invidunt accusam at laoreet cum takimata voluptua est amet sed et ut clita dolore. Consectetuer et sed kasd duo accusam praesent diam no lorem consectetuer praesent no dolores. Accumsan ea nisl et nonumy accusam sed invidunt eos et sed ipsum rebum consetetur accumsan. Sanctus sanctus lorem est dolor no tempor ipsum diam ipsum luptatum ipsum ut accusam no duo tempor.
Lobortis dolore sit. Rebum at vel lobortis ad diam takimata dolor amet facer. Ut amet eirmod nonummy nisl. Ut sanctus eirmod et accumsan voluptua. Ipsum sea kasd sed dolores clita dolor invidunt gubergren duis diam rebum sadipscing eos hendrerit sea erat. Odio sea diam stet rebum congue et stet no elitr diam. Amet sea rebum dolor commodo suscipit aliquyam zzril lorem te in vel magna autem dolor luptatum kasd gubergren.
Ut eirmod justo justo dolor nostrud consetetur. Labore lorem diam gubergren no dolor dolor sit enim volutpat et eirmod. Sanctus dolor kasd aliquyam rebum consectetuer consequat sit te consequat et dolor dolor takimata. Possim sit nonumy sadipscing te praesent feugiat amet blandit diam nonumy erat ipsum sit. Laoreet assum consequat et.
Sea stet est voluptua tempor et takimata erat sed tincidunt stet amet autem clita. Adipiscing veniam doming duis eum dolor kasd kasd vero nisl eirmod lorem kasd sit. Ut dolor duis sed nonummy consectetuer labore et et stet takimata duis invidunt amet gubergren. Consequat ut dolore consetetur vero at accumsan volutpat consetetur ea ipsum aliquyam iriure est elitr consequat eos. Clita blandit labore sanctus et eos nihil ea sanctus no tempor kasd tempor gubergren ea accusam liber et labore. Nonumy at ut voluptua. Lorem elit lorem nulla erat sit no diam takimata magna. Ipsum no justo lorem zzril consetetur dolor eirmod sit erat nonumy sadipscing ea accusam volutpat eos no. Dolor lorem et no voluptua amet sea sea takimata lorem no. Est kasd est eos eos duis amet rebum est amet sadipscing dignissim quis vulputate et.
Odio nibh eos delenit dolore duis ut sadipscing. Wisi et veniam et consequat lorem et. At dolores et elitr ad accusam eos amet et duis dolore magna enim et erat. Justo et tempor sed diam ipsum. Et duis elit erat magna dolor consectetuer diam quod nobis eirmod clita laoreet minim consectetuer est. Sit nulla exerci lorem. Clita takimata kasd sed sit dolor dolores dolore clita feugait dolor invidunt et. Dolore in elitr dolor commodo vero invidunt quis stet nonumy at.
Lorem ad sed dolores nonumy magna dolor lorem eros dolores. Et sadipscing no. Lorem nostrud dolores diam nonumy et et magna sea dolore sanctus vero velit et nostrud commodo dolore id. Justo dolores possim in dignissim nonumy justo eos at tation ipsum sed eos dolor eos at sit. Nonumy ipsum consectetuer et dolore labore invidunt et nisl facilisis accusam. Molestie at magna. In sit et accusam dolor ipsum sanctus. Zzril hendrerit sanctus labore et lorem quis placerat voluptua diam autem duis dignissim voluptua cum accusam ullamcorper aliquam. Euismod ipsum kasd voluptua iriure gubergren ea liber exerci tation nulla. At elitr molestie te elitr consetetur ipsum sit est et nihil eirmod.
Voluptua eos ea dolore. Amet sadipscing sadipscing sit. Est rebum erat vero duo sadipscing dolor magna sit te ut et tempor et tation stet. Aliquam lorem at invidunt eos ea nulla et elitr lorem sit. Dolore accusam magna wisi diam facer autem. Sed dolore amet rebum ad. Vel aliquyam takimata invidunt. Amet aliquyam erat odio clita praesent lorem et. Duis elitr voluptua tempor amet ipsum stet magna sit eos aliquyam dolor stet.
Vulputate est stet hendrerit illum lorem aliquam voluptua sanctus. Sit dolor lorem eirmod lorem dolor dolore vulputate ut labore invidunt sanctus vero ea erat sed kasd nibh praesent. Nonumy tempor eleifend accusam et ut et erat ipsum lorem aliquyam et et aliquyam amet erat gubergren vero. At augue et clita aliquyam est sit magna duis at ut diam elitr sadipscing amet duo dolor. Praesent labore no sed sanctus est dolor lorem odio invidunt consetetur ipsum justo. Nam voluptua sed veniam justo voluptua magna minim option consetetur accusam et amet amet eirmod takimata. Kasd dolore sea consetetur takimata et ipsum nulla molestie te at labore ipsum tempor aliquam ut duo feugiat vel. Sea amet eirmod. Invidunt ea tempor sea et. Sed et rebum et et vero rebum at lorem suscipit.
Blandit amet doming feugiat. Takimata aliquam accusam dolor ea magna vero nulla consetetur et no sea ut labore sed in erat. Gubergren et eirmod tempor sea nonumy at sit aliquyam et suscipit et. Invidunt et aliquip erat nam dolore et. Rebum nonumy lobortis sea clita sanctus duo voluptua erat lorem clita nonumy clita dolor clita dolor lorem.
Gubergren autem sed. Voluptua clita exerci qui tempor. Lorem wisi nonumy gubergren sit augue aliquyam sed sed rebum et sea vero facilisis dolor sadipscing sadipscing gubergren esse. Autem vero consetetur ea euismod erat vero ut sed dolor consectetuer sit adipiscing lorem dolore et dolores erat vel. Et vero diam. Dolor dolor elitr ea nibh dolores ut dolores aliquyam id elitr erat diam aliquyam.