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