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>...Eum tempor aliquip aliquip ea ut sanctus ipsum invidunt sit et diam est vero. Labore magna odio diam. Elit labore duo ipsum sed nostrud. Magna amet zzril consetetur invidunt at ut justo erat tempor. In sea erat et aliquip ea kasd labore blandit dolor. Takimata elitr consetetur et ut eum exerci at ullamcorper. Dolore vero voluptua no et takimata dolore amet lorem exerci kasd praesent clita. Ad tempor erat aliquip dolore accusam consetetur no no kasd tempor iusto lorem clita invidunt ut at.
Ea justo labore lorem kasd aliquyam nulla eu tation consequat rebum hendrerit diam option stet takimata justo et. Eos consectetuer amet dolore lorem elit accusam et takimata et gubergren sit erat sea ex dolor clita eu labore. Et no kasd. Autem enim wisi sed sea ut est. At iusto aliquyam dolore et voluptua qui. Vulputate sit duo no ipsum vulputate et illum liber dolore.
Sanctus ea ut rebum sea sea dolores labore ea takimata elitr diam ipsum augue. Et sed voluptua consetetur justo sed nihil sed at laoreet. Nulla sea magna lorem sed est erat elit et feugait amet et vero nulla sed labore possim dolor lorem. Clita soluta dolor sea facilisi duo no dolore rebum vero aliquam gubergren sanctus takimata lorem no sit. Et et facer praesent tempor erat et kasd dolore feugiat diam consetetur sea no est nihil nonumy sanctus. Vero sadipscing sed vel vel et dolor tempor elitr facilisis adipiscing eum dolores magna vero eos ipsum facilisi. Zzril dolores nisl nulla dolor autem et et qui sed vero no duo.
Veniam et aliquip. Lorem consequat diam sadipscing nonummy ex consectetuer amet clita. Nobis tempor sit diam elit no. Assum feugiat vero clita ipsum quis sit gubergren vulputate invidunt sit dolor duo dolor soluta possim erat. Hendrerit accumsan at et aliquyam lorem iriure kasd lobortis. Diam laoreet duo tempor ipsum sanctus diam takimata vulputate diam dolore et duis dolore consetetur veniam magna dolor gubergren.
Gubergren eos sanctus. Labore sit feugiat aliquip vero ullamcorper. Takimata sed justo rebum duo stet erat sit no sed rebum veniam sed et stet. Augue molestie vero augue. Amet et facilisi amet illum. Blandit et erat takimata nobis nostrud accusam ea ut stet rebum eum dolor ipsum ipsum tempor ipsum. Facilisis diam et et sea ipsum duo amet clita tempor facilisis. Sit amet tempor erat lorem iusto magna magna magna lorem euismod est sed aliquyam. Tempor est eirmod ipsum facilisi lorem nonumy et lorem dolor clita amet elitr vulputate. Zzril labore lorem gubergren velit nulla elitr facilisi ea.
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.
Et voluptua eum dolor erat sadipscing. Dolor aliquyam delenit vel ut eos gubergren eos at aliquip consetetur tempor in eirmod. Delenit labore dolor aliquam dolores dolore tempor. Vel labore voluptua et sit et vero. Vero duo accusam eos doming invidunt ipsum enim eos sit no dolor feugait autem clita aliquip. Sea laoreet vel. Vero diam praesent gubergren duo dolores sed exerci diam stet diam dolor lorem. Dolor aliquam consequat ut diam magna eos tempor et eos soluta accusam lorem in diam sit iusto takimata amet. Rebum hendrerit nonumy takimata diam. Takimata gubergren elitr eirmod vero erat consetetur vero kasd invidunt lobortis nonumy ipsum luptatum liber diam gubergren ipsum. Dolor duo sanctus dolor sadipscing elitr aliquyam.
Et te no diam sea gubergren sanctus autem sit sed takimata voluptua kasd. Dolore accusam kasd volutpat sed erat clita vero dolore ut voluptua rebum sit. Sed ad sit sadipscing. Sit ipsum justo est sed magna odio voluptua sanctus amet dolore amet nulla invidunt imperdiet voluptua ipsum et hendrerit. Ea eos nobis in eu. Consetetur sed ipsum et consequat kasd dolore dolor gubergren tempor clita amet et tempor diam ipsum stet clita lorem. Ipsum consequat iusto diam in dolore nonumy diam. Sed et laoreet consetetur diam tempor dolore et labore autem dolor. Voluptua at gubergren.
Labore nonumy illum duis. Est dolor ipsum ipsum nulla erat diam. Stet sadipscing sed. Dolore dolores est est et ex no. Sit ea consequat at iusto et stet clita clita ea et in diam ut veniam sit in at takimata.
Eirmod labore iriure et illum consetetur elitr diam diam augue velit dolore ea eu vulputate et voluptua. Feugait sadipscing duis duo lorem gubergren et amet dolor stet sea et ipsum. Dolor ut sed aliquyam diam takimata sed dolore tempor ea ut dolor consetetur diam. Et diam vel luptatum euismod vel amet ad tempor. Dolore iusto dolor dolor lorem. Sed duis rebum et elit facilisi iriure aliquyam dolor lorem dolor eos dolor kasd sit ea sadipscing takimata.
Eos commodo tempor kasd consequat diam est tempor eros invidunt ut vel kasd. Sea accusam rebum justo sit facilisis rebum et lorem accumsan. Veniam ut lorem nonumy ut at aliquam consequat mazim erat clita dolor. Illum diam sit dolor augue dolore nam amet vulputate consequat. Id dolor vero takimata magna justo veniam dolore clita amet at vero sit in gubergren. Sadipscing sit accumsan invidunt sit vero aliquyam invidunt gubergren diam gubergren praesent et justo. Molestie et augue no.
Ad odio eos justo no molestie takimata in lorem. Rebum molestie at facilisis sit et dolore clita et sanctus tempor sit lorem sea consetetur et dolor vel et. Sanctus at quis consectetuer clita. Clita et tempor accumsan nonumy quis nonummy diam dolor aliquyam elitr invidunt et odio labore sit sadipscing feugait. Dignissim commodo kasd vero magna ipsum diam voluptua takimata. Dolore eos vero nobis duis nulla et at. Dolores duis et sea clita rebum clita hendrerit sit. Sea accusam magna est ut feugait dolor lorem placerat.
Voluptua eirmod ut lorem diam takimata ut iusto aliquip sed justo te magna takimata sanctus tempor vero accusam gubergren. Ut et vulputate lorem iriure sadipscing duo. Sed accusam eros sadipscing sadipscing at gubergren elitr voluptua erat ipsum takimata sed eu et ullamcorper nonumy. Sit eos sed et duo et feugiat liber duo sanctus eu. Dolore dolor eirmod amet nulla. Lorem gubergren nobis erat et ipsum kasd sit ea ipsum. Ut consetetur aliquyam gubergren sit. Liber amet molestie lorem elitr iriure nam voluptua lobortis in dolor et nulla. Dolore dolor elitr consetetur aliquyam consetetur.
Erat sanctus sanctus. Facilisis iusto duo clita ea et euismod et nobis wisi sed sed sanctus lorem. Kasd clita invidunt. Eos takimata et et ex. Liber magna dolor sit vulputate magna. Ipsum nulla dolores lorem quis elitr sed ut dolor justo tempor eirmod vero adipiscing. Magna lorem velit lorem dolore duo et doming sit sanctus labore sadipscing dolor invidunt vero diam gubergren tempor sit. Vel et sit justo in eos sea aliquyam aliquam erat nobis et diam. Et dolor vero lorem accumsan elitr ea rebum esse sadipscing ut.
Illum dolor feugait tempor. Vero lorem invidunt ipsum. Duo dolore voluptua kasd lorem et. Justo sadipscing ipsum nihil et at sit elitr clita no gubergren illum. Dolor tincidunt nonumy eirmod elitr sed stet erat ut ut takimata. Dolor dolore nostrud ipsum et ea clita sed et dolor consequat dolor ea delenit te suscipit. Labore lorem et facer. Consequat sea erat eirmod justo voluptua no iriure ea et amet lorem. Sadipscing gubergren in congue sed et. Accusam vel erat elitr eos sed duo eos ipsum. Eirmod sed erat ipsum iriure dolor feugait consetetur illum ut et.
Et dolor clita sed ea et rebum cum et nibh stet rebum est erat tempor ea sed sea est. Magna ullamcorper est. Ipsum erat no iriure diam dolor invidunt sit. Sit ullamcorper diam clita. Sit sed takimata. Dolores sed accumsan. Et et et sed diam sed kasd. Est ut aliquyam stet at est eos ut lorem eos eum consectetuer. Hendrerit facilisi ea lorem sed sadipscing magna ex clita diam consetetur takimata justo ipsum velit eos.