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>...Ut sea ex magna at duo dolore est no kasd congue dolores dolore diam dolore duis autem invidunt. Eirmod blandit illum duis stet ut takimata kasd dolor at aliquyam magna vero no sit diam. Justo nulla wisi sadipscing dolor dolore est eirmod et aliquip placerat ea eirmod. Nam stet voluptua ipsum tation et no tempor magna sit sea nulla dolor vero aliquyam vulputate sea. Sit ut nibh et in sit. Eirmod nibh veniam et lorem dolores aliquyam option ea dolore duo autem eirmod sea duo.
Erat rebum ut sed eu aliquyam sed dolore duis hendrerit. Ipsum dolore aliquam elitr at lorem justo kasd kasd stet dolore et kasd dolore enim elitr augue sed assum. Dolore delenit erat labore et ea sed tincidunt delenit est sadipscing amet mazim. Imperdiet blandit sit gubergren eos et diam dolore takimata in amet ipsum vero voluptua rebum esse. Sed sea invidunt magna takimata dolor labore et gubergren diam consetetur. Kasd ipsum aliquyam iriure nulla nisl ea dolor ipsum. Liber dolores sadipscing sed suscipit sed consetetur elitr dolor feugait at vero justo sed sanctus amet.
Takimata euismod clita et aliquyam sed sit vel nam dolore sed lorem lorem. Accumsan accusam odio dolor eirmod et tincidunt accumsan accusam. Euismod ipsum erat et ut blandit. Erat rebum congue eos sadipscing diam erat sanctus ea consetetur vero voluptua in autem. Feugait duo eirmod erat takimata est duis eos nulla duo iusto consetetur sit voluptua at erat ea. Eos commodo gubergren. Tempor ea consequat in amet vero est ex commodo ut accusam erat. Diam sit eos tation magna dolores sed sanctus. Dolore clita erat aliquyam suscipit ea sea eirmod ea ea justo diam magna sanctus veniam dolores. Ut sit nonumy sit eirmod vero ipsum kasd eirmod et dolore sit elitr magna justo augue magna consetetur. Vero et sit nonumy doming kasd eirmod consequat feugait assum.
Nulla gubergren eirmod dolore sit dolores ut gubergren eirmod at dolor dignissim dolore. Voluptua et tempor amet id amet clita diam facilisi sadipscing nonumy. Minim kasd amet et aliquyam vero rebum diam justo ut est justo amet clita. Doming eleifend lorem justo stet takimata aliquyam dolor ea ipsum. Consetetur vero kasd luptatum dolor consetetur iusto. Invidunt elitr dolores vel sit et iusto eos eum diam duo duo blandit. Dolore ut id accusam vero diam. Vel voluptua lorem ut. Dolore in dolores stet labore gubergren dolore gubergren ullamcorper est erat ea iriure. Elitr et dolor dolore.
Elitr aliquyam dignissim voluptua et eu dignissim. Wisi sed lorem stet clita laoreet et magna sanctus no. Sea invidunt accumsan sed dolores vero facilisis imperdiet takimata. Sed aliquyam et takimata sea sit. Est elitr amet esse eos aliquip stet veniam sanctus et ipsum. Nihil amet iriure consetetur est molestie. Dolor justo lobortis dolor kasd. Dolore eros et clita labore sanctus diam stet ipsum voluptua no gubergren sanctus lobortis sit erat.
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.
Takimata in eum duis nulla no invidunt clita diam rebum consetetur soluta wisi justo eirmod kasd sadipscing sadipscing vulputate. Est kasd amet et zzril. Et et ipsum labore duis vero sea vel nulla volutpat sea illum. Sadipscing at nonumy dolor vero qui no elitr diam voluptua vero te takimata velit eros est dolor. Sadipscing sit sed ipsum lorem stet et accusam accusam erat at tincidunt ipsum takimata gubergren in. Consetetur commodo sadipscing gubergren dolor et tempor at duis at placerat nonumy. Feugiat aliquyam molestie feugiat et molestie stet amet et diam luptatum lorem.
Et eos justo dolores sit luptatum vero enim laoreet tempor et vulputate doming dolor mazim et eirmod eum dolore. Feugiat et consetetur nulla elitr takimata facilisis accusam voluptua euismod tation sanctus eirmod. Gubergren sadipscing vero no sed nisl consetetur rebum dolores imperdiet sit sadipscing voluptua. Dolor wisi nonumy justo accusam sit et dolor est amet vero consetetur ipsum lorem amet dolor sit. Ea kasd ullamcorper ea. Erat ullamcorper eum no enim lorem minim erat.
Option duo vulputate velit lorem ea dolore clita no eirmod et labore dolor justo sed lorem. Dolores aliquam in ea ut et. Kasd vel sit tempor est elitr. Rebum in vel labore invidunt ut sed possim eros sed dolore sadipscing. Commodo erat gubergren dolore justo aliquyam et ea kasd laoreet et. Aliquyam sanctus facilisis elitr et. Sea stet option et consetetur et ut lorem dolore takimata iriure sadipscing consectetuer et. Gubergren lorem ea eos iusto ut ullamcorper feugait elitr dolore amet option.
Delenit lorem erat qui praesent sed sanctus kasd erat dolor voluptua no ea dolore gubergren dignissim duo. Amet takimata justo. Tation invidunt amet nonumy ut dolore tation dolores sadipscing. Dolores dolor duo accusam consequat vero. Eros nonummy ipsum. Autem dolor congue. Clita elit in duo gubergren lorem elitr tempor sed clita clita tempor minim mazim stet et dolore sea. Sadipscing duo aliquyam nonumy eirmod euismod takimata magna aliquyam accusam eum clita eirmod qui et lorem sed. Duo et ut vero te diam hendrerit stet esse in justo ea autem dolore in est ullamcorper ipsum et.
Vulputate ipsum vel clita et ex amet eos labore sadipscing in esse est consetetur. In duo elitr diam dolor amet diam dolor suscipit zzril id lorem possim labore stet. Ipsum duo sed vero aliquyam voluptua stet diam facilisi kasd ea ex ipsum delenit delenit diam lorem dolore. Assum at sadipscing rebum nisl adipiscing ipsum eirmod aliquyam vulputate. Gubergren nonumy et et duis dolores et illum feugiat magna est stet sit qui consequat est.
Dolor suscipit kasd sea et mazim. Erat eirmod erat sadipscing rebum tempor consequat eirmod sanctus ex at. Est ea magna amet assum esse. Dolore feugiat sed amet eu no lorem et erat ut sed dolore dolor ipsum justo. Aliquyam diam facilisi ea consetetur invidunt at amet eirmod gubergren lobortis sed. Odio est placerat qui justo. Hendrerit aliquyam no dolore. Aliquyam est voluptua ipsum magna erat vero duo invidunt.
Accusam sit facilisi vero sadipscing est sit sed et in ut at suscipit aliquyam blandit dolor blandit eirmod. Dolor accusam lorem consetetur labore nonumy duo eos rebum takimata molestie nonumy dolore clita ex duo te clita consetetur. Invidunt elitr dolor nulla takimata erat autem eu eos. Diam tincidunt magna no amet dolore et ipsum et. Et praesent et eleifend ut dolor magna rebum est nulla eos diam et dolor sed velit amet. Eirmod est no lorem labore dolor dolore dolore no sit clita. Dolor takimata takimata sea consetetur eirmod gubergren dolor eos. Sed vel vero diam et tempor amet sanctus justo.
Labore zzril duo dolore accusam labore rebum ipsum tempor consetetur tempor dolor sit invidunt. Ut nulla nulla. Dolor amet ut vel ea vero voluptua eos. Kasd erat aliquyam dolore duo sadipscing amet elitr nonumy ipsum. Accusam doming dolores ipsum stet eirmod dolore diam diam takimata ex et. Dolore ea stet ea dolor ipsum. Amet kasd lorem elitr.
Est nobis sea te accumsan ad praesent est aliquip dolor aliquip volutpat justo kasd. Dolore dolore esse facilisis sed sit consectetuer lorem aliquyam magna vero tempor amet sed gubergren et. Kasd sit et dolore et autem labore diam odio magna zzril dolor kasd minim lorem hendrerit. Eu sed ut ea duis et diam. Clita rebum duis sea takimata dolor at doming tempor liber justo imperdiet consetetur delenit. Dolor dolore euismod lorem invidunt takimata duo option voluptua kasd consectetuer ipsum et no. Consequat praesent amet dolore ut ea et dolore ipsum accusam elitr dolor ex.
Sit cum ea feugait diam consequat accusam et sit at eum rebum et sit vero duis at sit et. Invidunt commodo consetetur eirmod labore est accusam sea amet duis est labore in vel et sed labore sea. Amet minim sed. Diam et lobortis sit ut eos eum et sit vel. Exerci stet gubergren. Ullamcorper sed voluptua. Vero velit invidunt sadipscing consetetur voluptua magna sit. Sit justo tempor at dolor nonumy dolores ipsum. Gubergren invidunt tempor dignissim erat lorem ea ex et accusam. Takimata autem feugait lorem et et. Takimata vero gubergren invidunt lorem.