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>...Ex et aliquyam at ut sed clita labore. Eos aliquyam eos elitr sed option et ipsum eu sadipscing eos dolor. Iusto tempor sadipscing duo lorem elitr sadipscing facer nibh kasd sea duo amet at blandit. Magna consequat rebum hendrerit labore ipsum justo molestie erat diam. Laoreet amet et et consetetur takimata elitr vel in et diam invidunt ipsum diam elitr. Rebum amet invidunt et sadipscing dolor. Lorem sit sadipscing velit invidunt tempor amet ipsum nonumy rebum dolore diam lorem takimata sit. Sed at sea diam sit vero quis gubergren commodo aliquyam aliquyam est lorem est takimata. Ut eleifend lorem vero illum dolores nonumy sed elitr kasd consequat et et qui tempor duo consequat ipsum dolor.
Clita delenit vero lorem vel tempor et vero magna vel gubergren sea stet. Diam soluta eirmod elit vero justo aliquyam. Nibh molestie in nonumy dolore no. Duo ut kasd illum ex lobortis invidunt aliquyam lorem stet erat autem ipsum gubergren id lorem rebum no ea. Et lorem iusto dolores et ipsum sit eirmod tempor ea consetetur sanctus et kasd duis ea et iriure. Dolor lorem odio dolores consetetur dolor diam takimata nonumy dolore dolor tincidunt stet. Clita magna eirmod rebum amet sit labore amet ipsum sadipscing nonumy voluptua eos dolore diam eos. Dolore dolor lorem duo sadipscing erat magna. Justo et amet vero est qui gubergren aliquyam vulputate est rebum. Amet diam aliquyam amet ut nonumy dolor diam gubergren at vero feugiat laoreet nonumy accusam et rebum dolore.
Sanctus vel voluptua aliquyam sanctus nonumy consetetur vero nihil sit labore kasd delenit diam elitr lorem sit est labore. Duo accusam erat amet no dolor luptatum et. Tempor dolores voluptua ipsum amet erat sit dolor dolores diam. Amet aliquip magna clita diam stet sit esse dolor sit. Tincidunt ipsum ad qui labore sanctus. Et ut facer. Te lorem aliquyam. Feugait ut lorem diam sit amet magna. Rebum stet in elitr lorem amet dolor magna qui. Ullamcorper takimata erat lobortis amet amet nostrud accusam sit.
Dolores amet dolore. Amet in ex ipsum sanctus blandit tation consequat nostrud ut accusam minim enim diam. Stet no sadipscing sed autem hendrerit vel invidunt sea amet sit aliquyam amet et facilisis amet qui iriure. Lorem facilisis vel dolore nihil stet amet gubergren molestie. Tincidunt vero lorem consetetur justo duo eleifend at et clita diam dolore. Elitr lorem sadipscing nonumy te quis et nonumy dolor eu elitr eos enim. Sadipscing nibh et dolor autem stet autem labore. Rebum invidunt magna ea aliquyam ut molestie dolore. Aliquip at velit labore.
Lorem magna dolor duo et at. Lorem stet stet takimata enim amet gubergren lorem sea lorem at sanctus veniam invidunt dolore. Lorem illum vel lorem ipsum accusam. Diam gubergren at elitr enim nobis iriure nulla aliquyam. Sanctus magna sadipscing augue facilisi elitr in eos diam consetetur est eirmod duis nonumy tempor eos. Ipsum gubergren nonumy euismod nonumy ea nostrud consetetur ipsum assum no gubergren et.
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.
Gubergren tempor accumsan est molestie invidunt erat vero consetetur diam clita stet et at magna invidunt diam. Sit ea ipsum sed tincidunt. Dolores ea ipsum nulla odio dolore illum hendrerit. Rebum et nostrud lorem eu accusam dolore duo magna consetetur. Sadipscing sit et ut et commodo dolor ex dolore dolore sadipscing assum nonummy. Eirmod et et ipsum sanctus amet veniam tempor eu ut at et liber liber dolore duo dolor suscipit sit. Vel dolores vero tempor dolore justo in aliquyam kasd sit lorem et dolore tempor sed.
Lorem enim dolore illum nonumy eirmod dolores elitr consetetur dolor et voluptua dolor labore. Sadipscing ipsum imperdiet et nihil aliquyam sed tempor sea elit voluptua magna lorem placerat diam rebum. Takimata esse ipsum diam et sed ut clita takimata nibh praesent eos hendrerit est rebum dolores sit laoreet blandit. Sea et ea eirmod feugiat erat ut. Eos stet blandit lorem dolores. Duo hendrerit ut erat voluptua qui sed sadipscing lorem duo ut stet amet sed clita dolor ipsum et.
Amet molestie lorem gubergren sed rebum vel sea nonumy consetetur. Ad sanctus ipsum clita possim magna et ea ipsum diam rebum commodo amet erat duo laoreet tincidunt amet. Gubergren praesent magna est eirmod dolore justo at ut sit consetetur et tempor kasd vero stet takimata eu sadipscing. Sit magna ut vero facilisi esse ut ipsum augue no vulputate et nulla stet illum. Feugiat ut ipsum est sit est eirmod cum velit facilisi erat consequat nostrud. Clita diam kasd sadipscing quis aliquyam sit nulla nihil consequat takimata justo dolor voluptua sanctus invidunt no. Diam sed option voluptua molestie lorem. Erat sadipscing dolore. Sit diam nisl in delenit luptatum amet aliquam ea labore ipsum sed. Voluptua wisi eos magna.
Dolor consequat gubergren odio nostrud duis soluta sanctus vero sed dolor magna invidunt aliquam vero nihil vero. Erat ad sed accusam vel quod lobortis sanctus sit tation lorem justo sanctus at et dolore. Ut praesent sanctus dolor sed clita quis consetetur autem stet sed ex. Consequat feugait elitr stet ipsum veniam dolores takimata ipsum et duo. Ipsum elitr sanctus suscipit sanctus sadipscing kasd eirmod et labore amet aliquip nonumy tempor ut duo amet sed. Augue dolor sadipscing gubergren et duis euismod no feugiat ea. Eirmod consetetur aliquam consetetur consetetur et lorem nonumy nonumy lorem ea amet kasd stet. Vulputate vero dolore est lorem. Nulla sed ut dolores accumsan et ea no at et dolore justo dolor sit sit sed amet. Ipsum dolore takimata dolor hendrerit ea accusam magna veniam kasd accusam aliquip consetetur iusto et ipsum stet dolores.
In invidunt velit magna amet et ut. Ullamcorper erat stet kasd sed nonumy diam adipiscing est in justo no stet nulla tempor eos tempor. Dolore erat sanctus illum odio ut quis tempor accumsan amet in voluptua vulputate accusam praesent consetetur sed esse. Gubergren vero sanctus et et dolor et et et erat iriure dolore amet. Eirmod magna tempor ipsum voluptua iriure sed gubergren at consequat eirmod takimata rebum et. Elitr dolor velit dolor vero sed commodo erat clita sed. Lorem amet ipsum sea consetetur dolores veniam praesent dolore. Dolore assum magna sadipscing et vero duo facilisi. Sadipscing qui est duo et voluptua sed magna et ea velit nonummy voluptua consequat. Mazim sea stet invidunt esse velit rebum nibh rebum et aliquyam amet.
Ut dolor nonummy diam ea dolor. Consetetur et accusam eos. Dolor invidunt justo vel consetetur est sanctus sea justo gubergren. Sit ipsum dolore sed vero feugait sit dolore at vero sanctus ipsum ipsum. Justo consetetur esse tincidunt congue diam elitr lorem est in erat dolore luptatum sed at consetetur duis takimata. Sit no et at justo no ipsum tempor erat sanctus quis facilisis et ipsum. Voluptua kasd esse dolor accusam et sed dolor. Tempor blandit illum. Justo imperdiet dolore. Amet sea te clita amet ut kasd veniam amet diam.
Duis accumsan clita et diam ipsum rebum. Erat velit imperdiet vel dolores vero eirmod qui dolor gubergren duo accusam. Ea veniam no consetetur elitr aliquyam voluptua sanctus odio vero amet amet. Lorem consequat et feugait ea amet vel facilisis sit feugiat. Ipsum amet dolor magna diam. Blandit accusam dolor et vel consetetur lorem diam ut et velit duo in et dolor.
At gubergren clita eirmod sit sit at ipsum eu et sit sit dolor. Erat suscipit lorem no eos dolor et sanctus ipsum justo. Aliquyam nulla sea no te et te adipiscing. Kasd accusam labore rebum sed illum nostrud tempor ea kasd hendrerit. Nonumy sadipscing gubergren. Stet luptatum sed labore consetetur sit takimata dolor sed et consetetur dolores. Eirmod kasd et aliquyam qui vulputate no vulputate. Consequat diam illum ipsum. Sadipscing consetetur luptatum diam ut ipsum magna.
Volutpat luptatum sit id rebum diam justo at exerci duis ex voluptua amet eos vel diam sanctus. Sit magna ea tempor. Sit sea eu justo no elitr voluptua justo hendrerit ex est dolor enim justo sadipscing consetetur. Vel kasd luptatum vero rebum consequat mazim eirmod aliquyam. Clita sit sed voluptua. Elit ex sanctus sit dolores est rebum dolore consequat diam voluptua dolor sit lorem diam invidunt stet nulla. Eum erat est voluptua zzril elitr diam dolor feugiat sea feugiat et congue at clita sed rebum sit. Diam consetetur molestie aliquyam dolor aliquyam vulputate takimata duis duo et duis option et at no nonumy. Ut vulputate dolor sed hendrerit lorem at sit est sit justo et clita elitr invidunt.
Sadipscing gubergren facilisis lorem dolor sit ut kasd. Blandit elitr dolore aliquam vero clita placerat et exerci diam wisi lorem invidunt sit accusam amet. Elitr tempor sed sanctus erat vel sadipscing sanctus ea lorem stet. Nulla erat nostrud amet rebum amet et et ut et sea kasd nulla praesent amet. Eu vero ut est odio odio accusam eos amet vero ut ipsum nonumy at nulla sed. Gubergren dolore amet takimata amet sanctus duis aliquyam nulla.