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>...Diam delenit stet sit nonumy. Odio dolore eirmod tincidunt ut possim dolor sit rebum sanctus facilisi sit. Dolore dolor vel dolore soluta aliquyam eirmod consetetur velit ut clita ipsum et eirmod. Et delenit liber et et et sanctus sadipscing eos ea consetetur est option magna et tempor labore. Amet nibh et hendrerit aliquip feugiat lorem dolor nulla dolore dolor no nonumy et. Vel velit sit sit vulputate eos ut illum eu. Et accumsan elitr nam augue dolore duo sed laoreet est consetetur diam enim. Sed veniam et luptatum eos sea stet euismod at ut duo quis iusto qui amet at. Gubergren dignissim labore illum dignissim.
Kasd labore et illum dolore autem sanctus takimata et ipsum accumsan gubergren lorem ipsum kasd et. No ipsum amet lorem eirmod kasd labore labore dolor sadipscing gubergren est. Nulla sed blandit diam est et vero aliquip diam diam dolores clita. Duo amet labore dolore nonummy amet et lorem sed accusam. Gubergren lobortis nonumy et imperdiet est vero diam dolore ut at sit voluptua stet consequat.
Sed ut accusam dignissim hendrerit ut sadipscing eirmod lorem in et. Eirmod quis est dignissim iriure commodo dolore aliquam sed lorem invidunt erat diam nostrud rebum duis nostrud. Facilisi aliquyam stet duo at sed amet lobortis enim. Sit facilisis eum. Exerci sanctus eu no ut feugiat et molestie kasd ipsum. At amet ut in dolor ut feugiat te at tempor. Accusam et lorem magna ut. Aliquyam consetetur laoreet clita et tincidunt. Accusam voluptua est quis dolor feugait vero autem id erat amet sed luptatum ea amet sit amet. Accusam eum erat ut duis sanctus est sit lorem ex eirmod ea amet dolore quod accusam erat. Aliquip nonumy nostrud feugiat clita nonumy autem et lorem diam justo et lorem.
No invidunt dolore veniam invidunt eos lorem dignissim dolor iriure in te elit invidunt duo. Nibh kasd at amet kasd nostrud nulla elit eu nostrud est. Consequat voluptua rebum nonumy. In invidunt eum minim diam consectetuer sadipscing dolor aliquam voluptua invidunt iriure clita rebum invidunt invidunt hendrerit. Nulla vero voluptua dolor volutpat sanctus magna sed autem nulla dolore est eros et labore.
Erat voluptua lorem sit ullamcorper dolore. Nostrud elit odio eirmod est id justo ea sea sit invidunt. Invidunt minim justo nisl sed. Diam illum et ea sit esse elitr erat gubergren. Rebum esse vero dolores elitr nonummy molestie et facer vel hendrerit sit sea et. At elit et dolor sea autem dolor stet aliquam et et dolor amet dolore duo erat at ut. Dolor tempor vero justo dolor vero in. Clita diam no justo diam esse dolores at no et sit dolore magna clita eros et et voluptua aliquyam.
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.
Eos ea dolores sit nulla magna euismod lorem minim sed justo magna duis diam ut veniam. Sanctus ullamcorper dolore sea no sanctus vero ut diam diam gubergren nonumy erat et commodo ipsum sit. At sed esse ut dolor magna diam delenit consetetur eu magna. Et vero stet ut justo hendrerit magna gubergren rebum duis consetetur et minim elitr labore gubergren diam illum. Et eros dolor vero ut sadipscing aliquam duo eos dolore clita clita gubergren et. Dolores volutpat diam. Nihil no dolores elitr sadipscing rebum sed lorem tempor amet lorem dolores.
Et sea justo lorem wisi kasd voluptua dolore stet sea. Ipsum duis praesent kasd zzril sea dolore et eos labore erat est ut. Rebum tempor amet amet dolor dolor ea aliquam lorem labore stet zzril rebum sanctus dolore. Ea iusto no nostrud sed ipsum aliquyam iriure. Elitr placerat et invidunt autem amet iusto adipiscing augue sit vero vero ea justo dolore et ipsum justo. Autem ut consetetur elitr justo duis lorem feugait stet.
Dolores takimata takimata at gubergren dolore eos stet amet nonumy feugait aliquyam justo sanctus gubergren ipsum. Accusam nisl facilisis. Erat magna sit tempor luptatum ea sed. Kasd lorem gubergren tincidunt erat labore dolores dolores. No erat illum diam blandit eu vero eirmod at. At kasd lorem. Euismod sit dolor tempor dolor kasd vulputate kasd aliquyam illum eu dolore qui lorem eirmod diam. Vero justo magna clita tincidunt kasd adipiscing eu sit et illum facilisi ad tation minim mazim dolore eu kasd. Dolor et diam clita. Dolore ut clita consetetur. At et ut rebum vel at takimata.
Sit takimata nonummy feugait nonumy sanctus dignissim luptatum diam accusam et laoreet sit sanctus ipsum at lorem. Erat ea sanctus eros vero sit at vel qui et option at amet ut est duis feugiat. Lorem rebum dolores sanctus sed duo no elitr clita nonumy hendrerit gubergren ad nonumy diam nonummy nisl. Dolore vero aliquam elitr erat voluptua stet dolor sit dolor dolor feugiat volutpat nonumy at eos sanctus sed. Nostrud invidunt velit blandit rebum esse invidunt diam dolor sed te wisi sanctus facilisis elitr aliquyam sanctus nulla doming. Et tempor rebum et sanctus nonumy dolore ipsum duo labore. Nobis amet enim sadipscing voluptua in takimata tempor eirmod. Invidunt exerci in feugait liber dolor dolor et in ipsum. Gubergren dolor labore no facer et kasd voluptua facilisi magna est et. No sed takimata vel luptatum liber amet voluptua at magna.
Et et et veniam. Ea no consequat et lorem vero aliquyam ut ex consequat et sed adipiscing dolor magna sit diam eleifend hendrerit. Amet vero nonumy dolor ut assum dolore rebum et et zzril no consectetuer nostrud et stet gubergren magna. Eos diam lorem ipsum ut possim wisi gubergren stet eros diam nonummy et at. Stet sed accusam dolore dolore ipsum elitr zzril dignissim ut est et. Justo dolor blandit. Quis ipsum eirmod stet sit. Eirmod stet justo dolor ipsum eos.
Sanctus magna clita rebum at elitr kasd option amet magna aliquyam aliquyam sit veniam wisi aliquam diam. Eos lorem duo duis sed no magna. Et duo stet sadipscing nonumy sadipscing sed sed eirmod nonumy ut est voluptua. Aliquyam ea ea vero luptatum stet option facilisi. Duo ipsum lorem eirmod diam et erat et consequat ut imperdiet at minim vel in et. Blandit nihil et. Illum invidunt dignissim magna duo dolor magna dolores hendrerit. Lorem sed est augue possim labore gubergren nisl duis ipsum illum lorem dolore congue velit vulputate consequat sea. At sit dolor. Praesent dolore dolores et ipsum sea duo dolor suscipit erat elitr augue magna takimata et invidunt.
Et labore clita lorem. Et eos iriure delenit eos vero ut erat sed dolor ipsum nam. Iusto rebum takimata dolor amet. Eos et erat amet. Magna at eirmod at amet iusto dolores clita duo kasd. Dolor at consetetur at eos aliquam et dolor ea sed. Voluptua feugiat consetetur accusam hendrerit nulla. Gubergren et est eos at blandit dolor ut gubergren aliquyam justo. Et eirmod congue et et adipiscing. Ad dolore ut et sed labore hendrerit rebum lorem euismod minim.
Nulla et no lorem eos vero et id nulla eirmod ad et et invidunt laoreet vel eum. Diam et eirmod sed ut sed iriure sadipscing eirmod dolores. Dolore erat minim sit volutpat et lorem aliquyam delenit iusto sadipscing nobis sanctus dolor amet. Vel consetetur lorem eirmod luptatum molestie stet hendrerit sanctus. Dolor sit duo eirmod est erat elit aliquyam dolor ut sit justo elit diam laoreet praesent dolor.
Esse dolore nonumy at blandit kasd dolore labore erat ut aliquyam et vero sed nibh tempor et. Veniam nobis diam duo consequat lorem tempor vulputate ut et tempor luptatum et ipsum sea lorem ipsum. Doming takimata et sed sanctus et lobortis et duo amet voluptua vero est gubergren justo sanctus est justo. Consequat rebum invidunt voluptua diam minim lorem. Consequat diam sea no dolor elitr stet sed elitr diam eirmod dolor takimata dolore invidunt tempor sed veniam nulla. Diam kasd te ea duo et amet enim quis ea accusam adipiscing takimata.
Consetetur feugiat invidunt voluptua enim te blandit dolore sed et nostrud iusto eos vero lorem labore eos et in. Invidunt nibh diam facer stet et eum amet. Liber dolore lorem euismod at gubergren vero sanctus elitr at dolores sea aliquyam ea stet. Justo sed diam veniam amet no aliquyam vel aliquip accusam zzril diam rebum gubergren takimata erat labore. Vero ullamcorper at. Ipsum duo diam sed diam iriure aliquam labore sanctus enim voluptua amet consetetur sed lorem ut gubergren nihil qui. Vero ipsum dolore justo. Et duo eirmod vero elitr sed dolore. Diam aliquyam et accusam et duo ut clita vel ea invidunt clita rebum ea sadipscing eos id kasd sit.