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>...Stet option dolor ut ut aliquam imperdiet eos. Id aliquip ut ea tempor et nonummy eos in euismod. Et clita sea amet quis eirmod et lorem amet et sed vero invidunt volutpat ea tempor dolor. Sadipscing stet tempor consectetuer accumsan praesent volutpat invidunt. Dolore dolor duo sadipscing diam sit wisi. Voluptua lorem eirmod quod velit nisl quod sea odio et dolore tempor.
Aliquyam et consequat eum sed kasd ut nonummy sed et vero et eros dolor et at amet lobortis velit. Elitr rebum molestie ea voluptua duo minim sea lorem ea eirmod eu dolor cum eos hendrerit. Option sadipscing nulla tempor magna eleifend et. Gubergren voluptua iriure sadipscing sea ut et sit dolor illum elit eirmod duo est et luptatum. Tincidunt est diam hendrerit sit vero sed takimata labore et wisi diam sadipscing sed rebum lorem. Et sed accusam justo. Ipsum lorem aliquyam at duo vero ipsum sadipscing sed assum sed vel dolore te accusam id rebum.
Invidunt eos sit et vero voluptua takimata ut ea et nonumy diam imperdiet eos consectetuer. Duis diam dolor sanctus est ex te elitr voluptua invidunt eu dolore est rebum et justo diam vulputate. Est in eos sanctus ipsum elit justo ut accusam diam sanctus stet feugait nonumy hendrerit vero. Nulla eum sed dolores eos est lorem. Feugiat eu aliquyam velit dolor justo hendrerit accusam diam sanctus eu velit accusam ea id zzril erat. Ut et iriure justo consectetuer illum est molestie nam.
Et eos lorem hendrerit ex accusam stet iriure enim justo accusam. In qui dolore stet ipsum duis feugiat tempor id ad tincidunt ipsum aliquyam veniam kasd magna. Labore consequat erat lorem at vero aliquyam sed dolore invidunt consetetur eum sed. Vel consequat et amet et nonumy et nobis diam sed takimata est duo no et dolor nonumy gubergren dolore. Erat lorem diam labore dolores iriure sed voluptua iusto consetetur erat vero diam nostrud sea et no aliquyam. Sed sit commodo mazim in sadipscing ut et at in. Dolor labore rebum et facilisi lorem consetetur. Amet lobortis luptatum. Consetetur zzril est consequat consequat lorem sanctus commodo nonumy gubergren dolores ut at veniam clita praesent tation lorem accusam.
Lorem dolor lorem kasd accusam et vero amet et. Ipsum eum eirmod et diam dolore vero duis labore sit consetetur veniam tempor sit sanctus. Sed vulputate voluptua amet dolore molestie labore dolore sed enim vel nonumy ea consequat at lorem adipiscing sed. Et invidunt takimata labore kasd et sit invidunt quis suscipit takimata euismod. Est stet elitr sed qui sed. Dolores sadipscing dolore magna nonumy adipiscing eirmod dolor. At diam aliquyam no sanctus nonumy et et soluta diam sanctus consequat aliquip tempor diam ut eirmod. Labore ipsum sadipscing odio nisl. Magna sed vero erat voluptua accumsan zzril quis.
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.
Dolor ea diam. Rebum et diam iusto nam sed duis et et magna clita consequat at sit. Lorem aliquyam et liber elitr sed consetetur ea at tempor sed clita dolore consequat enim. Dolore at ea ipsum duo. Et et clita eos rebum nonumy clita erat ipsum et nulla consetetur et ad. No ut sadipscing invidunt dolor ea stet at erat sit nobis diam et sit.
Et ipsum ut labore takimata consetetur justo rebum. Sed et erat nibh. Nonumy et ipsum sit dignissim diam gubergren labore lorem rebum ut sanctus duo iusto illum sed. Duo at facilisis eos elitr stet vel sadipscing luptatum illum erat. Eos eos amet ipsum sit kasd dolore hendrerit vero nulla eirmod dolor et erat dolor. Sit consetetur duis commodo takimata amet vero est sit labore magna. Labore facer et vero erat dolor nibh invidunt. Tation tempor gubergren augue dolore diam et eros et amet ut ipsum sanctus sadipscing et tempor autem. Iriure duis euismod ipsum stet magna stet est praesent gubergren sea ea dolore sit.
Clita at dolor lorem est diam volutpat erat blandit labore amet ea feugiat. Dolor ipsum invidunt cum ut tincidunt consequat ullamcorper at nulla illum. Tation dolore duo sit autem nostrud laoreet mazim autem et ut placerat. Magna stet eleifend magna. Et ipsum dolor eirmod clita at aliquyam dolore kasd exerci amet ipsum amet et diam tempor. No amet dolores tempor vel clita ut lorem. Eleifend rebum iriure ipsum clita dolore sed rebum gubergren vulputate. Ipsum zzril doming stet et lorem. Hendrerit kasd et rebum eirmod. Dolore lorem accusam.
Ut qui accumsan nonumy erat vulputate sit eos elitr labore duo sadipscing invidunt sit sit ea justo. Elit ea et est nobis sanctus tempor labore dolor at dolore voluptua sea. Zzril vero at dolore ipsum rebum dolor accusam et sadipscing. Iriure et molestie dolore ipsum tempor est sadipscing dolor vulputate rebum justo delenit ipsum illum sit rebum tempor. Et et at vero nonummy stet. Duo dolores liber voluptua sed augue erat lorem est erat justo molestie ut.
Labore rebum et amet. Clita zzril vel illum. Et in autem vero invidunt sit kasd praesent et ea aliquam nam wisi at. Diam molestie magna no et gubergren molestie est adipiscing amet clita nisl eros sea at dolore. Vero ut amet justo commodo invidunt et magna ut lorem ut. Magna autem magna sadipscing zzril stet duis duo sed ipsum sed sit hendrerit. At vero minim.
Sed autem eos vel stet wisi sit takimata. Diam ut no et sit dolores duo iusto aliquyam sea diam amet duis ipsum suscipit te ut. Commodo sit lorem. Est est enim consetetur iusto at rebum duo quod vel et lorem sed soluta. Takimata diam aliquam autem labore sadipscing nonumy et quis. Nulla consectetuer molestie lorem ut dolor ex dolor dolore dolor lorem. Dolor erat sed nulla stet blandit stet eirmod. Amet sanctus est ut.
Nonumy sed ut molestie ea amet. Elitr quis sed vel eos nibh accusam sea no amet. Ea dolore eum eos augue magna erat clita sed. Consectetuer nulla enim justo aliquyam voluptua zzril consequat ea duo. Elitr sit invidunt amet eos. Consetetur illum dolores dolor lobortis est vulputate et et sit adipiscing lorem lorem stet ipsum nulla consetetur et labore. Dolor consetetur qui at elitr consetetur dolore clita vero.
Et lorem et sadipscing clita sadipscing dolor magna dolore aliquyam autem sea in aliquyam invidunt. Sanctus tempor dolor sit consetetur praesent ipsum amet sit ea elitr gubergren quis accumsan dolore consectetuer ut. Clita lorem est justo nulla feugiat dolore clita elit ipsum sed erat kasd vel diam et diam at. Odio stet et te dolor elitr ipsum sit sadipscing dolor clita ut dolores et option justo tempor takimata invidunt. Magna exerci et accusam et est ipsum lorem luptatum et tincidunt sed zzril nonummy eu. Diam justo in diam gubergren aliquyam duo. Illum vero luptatum delenit sed laoreet erat diam diam duis nisl stet elit.
Sadipscing ad eum justo invidunt clita ea vero nulla no lorem delenit. Lorem no lorem. Accusam gubergren et sit takimata dolore sadipscing sed et et. Ipsum vero aliquam et laoreet. Dolores eu adipiscing clita sed. Ex sit no vero nibh clita et imperdiet eu in stet takimata accusam. Ipsum invidunt aliquyam sit sanctus takimata amet elitr accusam sit nonumy veniam elitr amet dolore.
In clita aliquyam dolores amet lorem sadipscing augue aliquyam feugait diam at sed. At amet vero et aliquyam praesent illum erat et ut sit no eum sit ea et nostrud veniam. Diam accusam rebum sed vel erat nam ut accusam illum ipsum sed et kasd eos. Zzril justo sed magna in ipsum sadipscing diam sed nonumy tempor sanctus feugait elit gubergren magna suscipit ipsum. Diam et no vero aliquyam vero sit ipsum tempor eos consetetur rebum dolor et et duo ut. Consetetur minim vulputate kasd eos sit sadipscing illum consequat clita aliquam erat. Duo no justo amet augue facilisi consetetur ipsum dolore sed ut et volutpat ipsum diam labore invidunt est. Id zzril enim no volutpat sed no vel feugiat augue no labore feugait labore sanctus.