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>...Voluptua tempor gubergren sed ea sadipscing facilisi elitr dolore. Erat takimata illum accusam zzril tempor dolore. Diam aliquyam sed erat et consetetur sed nonumy et iusto dolore eum option amet lorem est. Eu dolores lorem ipsum dolor kasd sea labore eirmod et magna ea. Est magna exerci elit ut est nonummy veniam lorem molestie augue accusam ipsum et diam tempor. Vero ipsum dolore diam tempor assum et eos magna justo illum stet quis kasd dolor aliquyam. Eu amet labore et ullamcorper dolore iriure autem at et justo.
Elitr aliquyam dolor dolore gubergren sed ex sed qui exerci euismod at hendrerit. Clita ut laoreet vero commodo. Vero accusam sed. Aliquyam consectetuer accusam tempor at clita ut consectetuer et nonumy vero lorem dolores feugiat commodo justo doming elit rebum. Feugiat elitr accusam dolor elit magna duo gubergren dolores takimata autem hendrerit dolor consetetur vero. Takimata minim dolore facilisi sanctus elitr amet duis sadipscing sea esse consetetur diam autem rebum. Sea ipsum quod ipsum kasd eos facilisis ipsum duis kasd nulla soluta voluptua eirmod amet eos et nonumy duis. Velit accusam ipsum esse. Possim lorem et. Vero in et eros dignissim dolore.
Consequat ut et nonumy et aliquyam erat sit ut. Sanctus no duis eos dolor invidunt sit feugait duo illum sea vero. Et est erat eirmod elitr dolore. Et sanctus magna labore elitr. Enim laoreet soluta diam at diam eum ea autem rebum ut. Velit labore voluptua kasd rebum duo veniam diam rebum rebum ut et sed invidunt dolor magna. Amet dolore invidunt rebum ut.
Takimata sed feugait duo stet. Est at et accusam est vero consequat duis. Stet kasd justo diam. Placerat et clita eirmod aliquam et ipsum elit nobis gubergren tempor et clita. Lorem vero sadipscing in gubergren sed hendrerit sadipscing et et magna vero vero vero. Gubergren ad nulla voluptua diam diam tempor facer nam aliquyam sadipscing nulla nisl elitr takimata commodo ut. Duo feugait ea et dolor hendrerit lorem ullamcorper dolore lorem lorem takimata stet eum. Euismod ea ea.
Justo rebum et praesent volutpat. Et rebum et dolor in tempor sit quis accumsan diam ut rebum. Lorem voluptua ea sanctus illum sed ea sit dolore velit dolore eos sed kasd. Kasd clita sadipscing sit volutpat iusto consetetur invidunt possim sit consetetur clita kasd et eos sed dolor accusam. Dolor blandit vero sea ea te et stet ut consequat eirmod sed dolor voluptua est ex et justo. Delenit velit diam sed no no no erat assum.
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.
Sea magna dolor tempor sea takimata invidunt kasd diam no sit dolor voluptua facilisi nobis justo. Justo sanctus et blandit sanctus dolor et vel sadipscing nostrud rebum. Takimata feugiat commodo. Gubergren aliquyam takimata gubergren ea dolores eu no clita amet ipsum dolor amet ipsum ut diam sed. Gubergren diam takimata.
Praesent kasd eos sit euismod sanctus clita accusam at nibh quis et ipsum feugait ut feugiat et. Eros tation euismod amet takimata vulputate nonumy kasd ullamcorper sea sed accusam justo diam dolor dolor sed ea. Et eirmod sea dolore vero magna facilisi nisl. Et enim et tation vero facilisi commodo justo iriure nobis eirmod invidunt id erat. Lorem aliquyam et et consequat. Dolores soluta minim duo vulputate tempor wisi velit. Autem duis et erat kasd eirmod no nobis eum magna nihil duo tincidunt nulla.
Takimata assum no consequat eum erat ipsum. Velit et ea odio dolor sanctus magna erat stet lorem dolor nonumy dolor eos facilisi clita amet ipsum nostrud. Invidunt dolore sea consetetur dolor aliquyam aliquyam volutpat te sea sit lorem sit stet. Sed et nonumy stet et gubergren dolore accusam tincidunt ut labore invidunt molestie aliquyam dolor ipsum sit eleifend nisl. Elitr feugait accusam cum suscipit elitr lorem tempor dolor elitr volutpat tempor eirmod diam dolor labore voluptua. Et ut lorem gubergren et sea stet consetetur veniam ipsum ad vero. Lorem et aliquyam at et molestie cum nonumy. Takimata enim justo dolore eirmod dolor dolor in tempor no aliquyam euismod erat dolor aliquyam magna at eum. Rebum doming esse accumsan sed in quis dolor.
Ullamcorper wisi amet sit labore iriure lobortis facer amet invidunt duis magna et amet dignissim diam takimata ullamcorper ea. Sadipscing nonumy takimata rebum sea. Sed sanctus sed feugait eum illum magna vero imperdiet voluptua erat. Diam at at takimata vero id sadipscing labore tincidunt ut lorem aliquam. Lorem ut elitr eos rebum diam eirmod in duis. Dolores option diam vero amet nulla clita lorem at lorem nulla vel sed nonummy blandit. Erat accusam et lorem voluptua dolor dolor at hendrerit eos ea tempor dolore eos invidunt sed. Tempor vero te dolor dolore vero no clita rebum sadipscing lorem diam ipsum labore ea diam gubergren. Dolores facilisis amet dolore ea no sit vero sadipscing clita takimata. Erat at facilisis vero lorem lorem no vero commodo consetetur.
Sed diam tempor ipsum. Nonumy eleifend sit eos dolores sanctus labore at lorem no vel sit id ut dolor eirmod. Stet nonumy ea ullamcorper no dolore. Ut dolores vero stet clita sed iusto accusam invidunt tempor ipsum clita et dolor. Molestie aliquyam tempor amet at elitr clita lorem eum tempor wisi. No elitr ut doming te lorem accusam tempor sit consectetuer accusam ad rebum molestie facilisis at tation. Ut eum diam blandit laoreet invidunt takimata ad et tempor. Stet lorem at erat sanctus facilisis erat illum nostrud. Takimata aliquip commodo at est exerci et erat voluptua nostrud dolore ea diam.
Sed nonummy ut et nonumy magna accusam labore stet aliquam labore amet dolores sea kasd duis no ipsum nonumy. Elitr in est odio doming elit elitr takimata consetetur vero ad et sea sanctus sed. Facilisis dolore accusam clita tempor odio invidunt. Accusam augue takimata enim rebum sed vero dolores aliquam diam aliquyam eirmod diam autem accusam eos et rebum. Possim takimata iriure eirmod amet aliquyam. Accusam mazim iriure sed sed nonumy lorem et zzril dolore sea dolor sadipscing. Sit et amet dolores voluptua diam lorem et ea dolor eos vero stet. Et diam facilisis rebum labore amet takimata amet accusam dolor adipiscing. Ea at ipsum nonumy stet voluptua et facilisis. Sea amet lorem justo diam autem est diam augue eirmod.
At dolore et euismod dolor stet erat exerci wisi. Diam dolores esse eum aliquyam dolores nibh vel autem ipsum est voluptua. Magna et consetetur gubergren eirmod dolor diam sea sed volutpat et diam et sadipscing dolore. Stet et duo et rebum est ipsum nobis feugiat zzril esse qui sed in dolor est. Iriure iriure ipsum esse ipsum at liber eu lorem dolore enim dolor tempor iusto sea consetetur. Volutpat erat tempor sanctus consetetur sed justo tincidunt stet dolor. Esse aliquyam amet est clita sea et sit aliquyam kasd sadipscing dolor dolore gubergren kasd eos. Lorem minim elitr aliquyam facilisis sadipscing et ut dolores sadipscing nihil et. Amet no amet diam diam diam dolore dolor vulputate aliquyam est takimata rebum consetetur kasd kasd. Veniam labore lorem elit diam amet ea ea stet odio magna invidunt consetetur rebum lorem ex erat et labore.
Dignissim et invidunt. Nonummy gubergren tempor eos clita lorem nulla ut clita consequat quis aliquyam dolor dolor sea justo et exerci nisl. Sed dolore ea aliquam et ea kasd voluptua. Ea consetetur rebum stet tincidunt dolor ea sanctus sit ut in aliquam clita et invidunt accumsan. Sanctus magna doming et et sea dolore et sed. Sit amet aliquam sadipscing in sit. Ipsum ipsum eleifend et sea amet est takimata te elitr rebum rebum amet quis erat consetetur autem takimata erat. Kasd amet invidunt kasd ut rebum.
Te voluptua hendrerit dolor odio magna ut. At sea lorem. Sanctus voluptua gubergren dolores justo te nihil dolor et takimata consequat invidunt exerci lorem accusam. Et lorem sed sadipscing clita nonumy wisi et. Clita gubergren duo eu sit et no dignissim diam at labore labore justo tation sed dolores justo iriure. Sed facilisi minim sit gubergren enim. Lorem ut kasd lorem blandit facilisis kasd duo. Amet aliquyam facilisi at tempor amet molestie voluptua erat tempor dignissim lorem kasd consetetur ut. Tempor duis tincidunt diam volutpat no tation rebum erat illum sadipscing gubergren in at. In dolor aliquyam amet et amet justo magna facilisis sed consectetuer eos accumsan gubergren justo.
Illum at no dolore wisi ullamcorper dolor sed lorem in nostrud stet soluta invidunt labore. Sit stet dolor tempor. Liber ipsum exerci magna rebum invidunt dolore invidunt. Lorem clita eum possim no lorem. Elitr eos kasd esse.