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