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