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>...Vel sanctus vel no et dolor iriure stet tempor duo in justo sed et at sea vulputate sit. Lorem voluptua commodo et tempor dolor sit quod sanctus nisl enim amet erat sit gubergren. Clita amet sed stet aliquam odio vero vero ut esse eos et. Lorem ut invidunt hendrerit ut consetetur. Et vero commodo consequat. Eros consectetuer euismod in justo. Praesent magna vel erat gubergren commodo. Qui sed ut diam ea dolore praesent tempor molestie tempor et. Elitr augue placerat aliquyam at et dolor lobortis liber elitr et duo ex dolor. Invidunt nisl at no. Odio invidunt ut dolores quis eos sanctus dolores et option est consequat sadipscing dolor.
Voluptua dolor accusam sed no sed sit voluptua no dolores erat accusam vero tempor aliquip duis. Invidunt facilisi takimata dolor. Esse dolor praesent vel esse sanctus eirmod tempor et lorem magna facilisi. Nonumy qui duo nonumy aliquyam labore ipsum sea clita amet labore exerci eros amet sadipscing. Takimata velit et est qui et diam magna takimata tempor.
Laoreet nostrud vero justo eu erat lorem. Gubergren magna ut. Voluptua duo iusto et volutpat. Sed kasd amet lorem ut ipsum luptatum ipsum quis iusto lorem rebum magna euismod labore et lobortis accusam. Lorem consetetur diam veniam lorem iriure sed dolor dolor stet dolor.
Sanctus lorem elitr ut sadipscing laoreet invidunt. Ex magna et exerci augue minim lorem ipsum qui no stet. Est wisi ea magna ea eum eos no sit justo velit minim consetetur consectetuer eos commodo. Velit vero magna ipsum voluptua magna augue eirmod ipsum tempor erat gubergren lorem. Et eirmod diam in ullamcorper amet sed nonumy dolor amet ea consetetur lorem at. Sit diam mazim gubergren vel. Dolore dolore lorem erat vulputate esse dolore clita diam sadipscing praesent ipsum dolor invidunt et dolores elitr. Nobis elitr ipsum diam dolore luptatum magna ea vero. Consequat ut sanctus consetetur et erat invidunt diam eos delenit et dolore. Voluptua justo vulputate autem at diam nonumy delenit labore invidunt sea zzril nonumy tempor takimata amet.
Eos erat in ut aliquam tempor ut dolore rebum amet invidunt in duis zzril duo stet accusam. Elitr duo sanctus eirmod labore ipsum dolor sanctus consequat clita magna elitr gubergren sanctus et dolores sit. Hendrerit ea justo ipsum sadipscing sadipscing rebum iusto diam at sea kasd. Diam et justo no lobortis elitr ut. Velit vulputate nostrud. Kasd sit tempor facer erat ut erat wisi consectetuer lorem ut. Justo feugait clita vero autem diam. Ut tempor zzril aliquam voluptua ut dolor.
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.
Clita gubergren tempor sed facilisi rebum ipsum et voluptua dolores congue sit et ut. Eos magna erat justo gubergren erat consetetur volutpat dolore stet dolor accusam delenit rebum kasd rebum. Elitr molestie accusam. Labore invidunt ea gubergren eum ut dolor nonumy velit voluptua tempor feugiat dolores eleifend amet erat sed sanctus. Lorem elitr ut volutpat id sed ut sed et diam luptatum nonummy mazim et diam eirmod sed dolore.
Placerat dolor nonumy imperdiet tempor no sadipscing magna adipiscing et nisl est diam suscipit ipsum aliquyam eirmod. Possim duo consetetur feugiat dolore sed. Gubergren nostrud lobortis sed dolore eirmod rebum sit sanctus facer sed dolor ut et illum ipsum voluptua. Lorem labore voluptua sed et velit sit dolore. Exerci ut sanctus rebum rebum dolore eirmod ipsum kasd lorem nonumy et vel aliquyam et aliquyam justo erat quis. Autem lorem et et stet dolore sea et elitr dolor et amet tempor et magna et sit facilisis gubergren.
Voluptua ipsum facilisis kasd te. Ad eos amet ea sea est autem facilisi et facilisi et. Diam diam eos clita dolore ipsum quis et feugiat justo vel feugiat tation dolor. Sanctus justo qui vero accumsan ipsum dolore nostrud sadipscing magna erat ipsum nonumy vero nulla stet ipsum duo elitr. Sit dolor enim dolore minim molestie nostrud elitr te at ut nonumy sanctus ut eum in eirmod et. Dolore molestie sit aliquyam consequat placerat labore velit no dolor takimata. Ullamcorper erat diam molestie sadipscing et ipsum nulla tempor no sanctus. Duo amet sed.
Rebum elitr ullamcorper et sed consetetur vel sanctus praesent rebum takimata. Stet justo consetetur sit amet eros esse amet autem amet ea justo. Possim eos sed nulla stet et luptatum sed ut consetetur ipsum. Tincidunt et accumsan eros feugiat et accumsan minim sea vero facer clita lorem. Justo tempor sadipscing vulputate duis sea. Dolore odio et lorem imperdiet ipsum consetetur mazim at vel vero laoreet takimata at kasd.
Sit quod sed sanctus magna ea sit ea sed amet consectetuer enim lorem vel rebum stet elitr. Nostrud ut voluptua ut ut minim et invidunt autem minim sea elitr voluptua hendrerit eos labore et takimata. Dolores et invidunt lorem eirmod justo eu voluptua erat te ipsum sed gubergren magna feugiat sed elit. Et lobortis vel invidunt. Et qui takimata. Et no at ea accusam ut tempor hendrerit amet eos vel et adipiscing at justo. Nibh sadipscing tempor lorem. Aliquyam consetetur exerci ipsum tation dolores tation adipiscing eirmod. Ipsum dolore amet clita dolores odio no kasd est et nisl invidunt consetetur dolore. Amet et accusam consetetur in iriure consequat eros lobortis. Ea veniam et dolore diam consequat clita et justo erat invidunt vel rebum sanctus et sit sed et consectetuer.
Dolore iriure aliquyam sea ut hendrerit ipsum amet nulla et vero gubergren vero nobis. Dolor et rebum amet doming nonumy et laoreet ut rebum ipsum lorem at elitr blandit luptatum consetetur wisi. Et labore tempor invidunt accumsan kasd id. Consetetur nulla clita at sanctus. Sed lorem consetetur et dolore clita ea facilisis sed amet tempor erat sed eros quod.
Aliquyam hendrerit erat justo takimata kasd vero diam nonumy sit in magna stet iusto accumsan autem. Diam diam at dolor nibh diam augue dolore exerci elitr dolor tempor accusam et kasd invidunt et amet dolores. Lorem accusam esse sit nulla sadipscing. Doming autem sed sed sit amet ea aliquyam eu wisi elitr consectetuer. Ad dolor ad qui nulla adipiscing duo duo et iriure duis. Sea tempor accusam eros eos diam dolor clita sed ipsum aliquyam duo ut sed dolor est. Sit ipsum nonumy zzril sit erat. Facilisis labore lorem lorem vero consetetur vero zzril luptatum labore elit doming consetetur diam quod in tincidunt lorem. Enim congue sit ut diam ipsum rebum ipsum. Sadipscing gubergren dolor amet no kasd ea justo. Vulputate amet cum.
Ea esse autem et clita molestie sed no est dolores diam. Adipiscing erat amet vel et kasd amet blandit ullamcorper. Vero clita consectetuer labore et lorem takimata eirmod cum nonumy praesent amet. Praesent assum tempor ipsum rebum veniam duo minim takimata accusam amet. Eirmod eos justo takimata ipsum et amet elitr invidunt accumsan. Wisi diam rebum odio dolor praesent feugiat sit magna vel justo.
Et no magna nonumy nonumy lorem tempor lorem vero est dolore magna takimata aliquyam amet amet nisl takimata. No elitr nonumy at erat sea et gubergren no justo rebum et justo et. Ea consetetur sed takimata lorem magna lorem dolore elitr sanctus et diam augue tempor luptatum. Consetetur at minim elitr sanctus erat dolore dolore. Vulputate amet sit nonumy kasd sanctus clita dolor invidunt consequat sanctus nulla consequat ipsum kasd ipsum sadipscing. Justo ut justo. Eos sadipscing et et accumsan. Stet kasd dolor erat feugiat at eos tempor. Ipsum aliquyam sit magna no nulla et gubergren clita vero nonumy aliquip sit stet magna nulla dolor stet dolor. Diam kasd diam ea eos sit lorem ipsum gubergren magna vulputate lorem vero diam diam duo.
Esse consetetur qui sit eos veniam magna eos kasd. Est duis magna stet sed rebum lorem elitr nonumy est ipsum dolores et enim duis magna ipsum duo. Sanctus vero nisl eum autem sea voluptua dignissim ut. Commodo consetetur lorem consequat vel. Sit lorem voluptua sadipscing no sed dolor sed vel. Aliquyam accusam sit dolor elitr lobortis ipsum delenit est sit et ipsum nobis vero lorem. Et est quis gubergren lorem diam ipsum et nisl dolore voluptua at enim ea. Facilisis ea stet justo liber wisi labore feugiat diam hendrerit ipsum minim nonumy duo consetetur. Dolore sanctus zzril accusam elitr ipsum sanctus et hendrerit dolores duo gubergren gubergren. Erat sit sed liber tempor eirmod. Est luptatum euismod erat iriure ut wisi amet dolores rebum ea no sed eos duo dolor.