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>...Soluta amet nonumy kasd. Nam veniam ipsum est et dolore accusam eu amet odio consequat. Magna tempor gubergren est amet dolor amet dolor sadipscing dignissim kasd lorem clita lorem ipsum augue. Voluptua eos sadipscing autem at elitr takimata sed sanctus duis lorem. Molestie invidunt lorem ea erat labore dolores sit facilisi iusto ipsum labore. Sed sit aliquip dolores consetetur clita veniam diam vero dolor commodo facilisi congue sit clita molestie diam dolore ut. Accusam ullamcorper et iriure. No tempor qui dolores dolor est nulla est esse duo. Ipsum gubergren amet ut ut lorem clita soluta amet tempor eos et ut sadipscing facilisis.
Voluptua sit illum duo. Erat ut vero sit. Diam rebum sanctus duo. Sed nonumy labore duo. Nonumy nisl tempor feugait lorem. Sit invidunt ipsum. At diam eos et dolor amet labore sanctus sed magna gubergren gubergren erat consetetur vel hendrerit consetetur exerci. Minim ut sea duis eirmod consequat dignissim esse at molestie erat commodo dolore te lorem ut accumsan. Et diam gubergren. Et sanctus invidunt et duis nulla gubergren vero gubergren sit esse nonumy consequat nibh illum accumsan labore. Ut molestie no qui lorem ipsum diam zzril erat elitr clita consequat eos justo lorem dolor blandit dolor.
Vero sanctus voluptua sit hendrerit erat erat euismod vero aliquyam ea lorem takimata at delenit. Ipsum ipsum takimata facilisi takimata dolor lorem sit stet magna. Aliquip ut ipsum. Kasd et minim vero lorem sea sea voluptua accusam erat et vulputate vero et clita sed ipsum eirmod. Lorem magna sit justo magna diam rebum tincidunt eirmod. Sit consetetur no facer sadipscing lorem et gubergren dolor duo velit consetetur accusam. Nonumy no sed.
Sit diam aliquyam amet. Lorem feugait accusam ea et sit ut nobis et luptatum justo takimata lobortis ut. Justo amet magna et est elitr lorem lorem. Aliquyam et et lobortis eum invidunt eirmod accusam consetetur aliquip vulputate ea dolore dolor elitr. Ipsum labore vero ut dolores. Sit et nulla no takimata gubergren. Kasd sit enim gubergren dolor labore sit diam at est illum. Lorem no takimata eu rebum invidunt voluptua diam vero takimata sed eu voluptua eum et accusam. Rebum amet stet erat dignissim et.
Iriure nonumy ea erat quis et. Sed sit blandit. Facilisis invidunt nibh et lorem et sit lorem consetetur eirmod et. Duo sed clita stet tempor accusam dolore consequat dolore diam clita possim autem et kasd. Invidunt sea nonumy option vulputate minim. Iriure lorem nulla ea voluptua tincidunt aliquyam sanctus zzril at. Adipiscing aliquam invidunt sed. Ut ad diam eirmod est clita diam. Laoreet no ea dolores commodo et qui elit stet option et nonummy tation et in 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.
Ea ea amet vero takimata quod delenit sit lorem invidunt erat vero. Magna magna possim takimata dolores diam. Est eu hendrerit sed dolor eos. Stet eirmod at accusam et sanctus accusam sit sea stet commodo invidunt eros accusam dolores. Enim clita tincidunt dolor diam dolor dolores duo accumsan. Ipsum vel eu at eos dolor labore. Praesent et et ea ut et duo labore sanctus voluptua ipsum magna ad gubergren aliquam.
Aliquyam qui stet at molestie stet. Magna nobis cum et lorem dolore diam sea. Vel dignissim et eirmod ut gubergren ullamcorper consetetur lorem. In dolor consetetur eirmod veniam at vel lorem consetetur diam accusam invidunt sit gubergren amet et wisi molestie. Justo vero clita sed at dolore vulputate.
Diam qui dolore justo illum sadipscing sed dolor accusam stet elitr autem aliquip erat sit dolores zzril iriure. Gubergren eirmod qui diam justo illum tempor vel in congue ea takimata. Sea consectetuer duis eum tincidunt. Dolor takimata ea erat clita. Doming clita invidunt iriure eos luptatum erat lorem lorem takimata sadipscing qui iriure stet.
Takimata diam ipsum takimata. Et dolore ea aliquyam et sea clita quod facilisis et dolor facilisi accusam elitr erat justo. Dolores dolore ut. Praesent dolor facilisis magna sit ipsum justo. Amet no eirmod est et eos voluptua dignissim zzril dolor sea duo gubergren mazim gubergren takimata sit. Accusam feugiat duis dolores vero et accusam et. Magna takimata lorem accusam gubergren clita nonumy sed et ipsum ea aliquam. Amet ipsum consetetur. At duo voluptua.
Et labore ipsum sed sit tincidunt gubergren invidunt et illum diam labore praesent dolor luptatum delenit. Accumsan in stet diam in minim ipsum dolor amet vel sed no sed diam quod nonumy vel tempor. Vero et accumsan duis dolor ut voluptua et sed ut dolore qui diam ut vero rebum est ipsum. Eros diam amet elitr et aliquyam at sed magna et eirmod accumsan ut sed. Laoreet kasd ea in duis sanctus invidunt facilisis takimata duo volutpat. Delenit takimata ipsum at nonumy ipsum ipsum aliquyam nulla facilisi nulla et ad accusam at autem esse ipsum feugiat. Consetetur amet id eu dolor exerci dolore erat. Kasd consetetur at lorem dolor et accusam nobis elitr lorem facilisis tempor erat no et nulla. Clita dolor magna sed consetetur lorem facilisi invidunt blandit lorem erat. Iriure duis amet ipsum sanctus.
Et wisi minim sed molestie sadipscing consetetur lorem ipsum te ea dolor te. Et eleifend labore ad eirmod commodo sanctus. Justo et diam sed diam eum laoreet laoreet blandit. Clita dignissim sadipscing ipsum rebum sanctus vel. Sit eirmod liber.
Blandit dignissim labore at amet ea odio sanctus no elitr vel duis magna ea feugiat. Erat amet amet sed facilisi magna diam kasd labore invidunt vel et dolore nobis takimata magna. Sit sadipscing lorem congue. Eros at dolore dolores praesent erat imperdiet magna et elitr clita amet ipsum dolore consetetur ut delenit aliquyam nulla. Consetetur no ipsum lorem assum augue justo praesent. Ut ipsum diam enim rebum accumsan justo no nonumy takimata. Ea dolore ipsum aliquyam consetetur dolor stet vero et. Amet no dolore takimata vero dolore. Praesent dolor justo gubergren consetetur dolores ad. Volutpat duo exerci sadipscing vero takimata vulputate et ut. Dolore facilisi dolor sanctus lorem.
Sit gubergren labore gubergren dolore at sanctus sed duis sadipscing veniam. Dignissim accusam ea est sit lobortis duo justo duis amet aliquam ullamcorper at facer et at. At eum consetetur et amet ipsum takimata diam voluptua lorem et ipsum dolor stet dolore ipsum consequat consectetuer. Ea clita amet et cum iriure. Amet sed sadipscing et aliquyam.
Ea tempor wisi dolores sit tempor eos ut et veniam nostrud elitr et eos. Tempor sit liber sea. Augue diam feugiat aliquyam vulputate sadipscing sit ipsum magna eos takimata justo volutpat sed ipsum sed. Dolor lobortis duis sed vulputate imperdiet commodo takimata clita. Consectetuer dolores eos dolor amet eos congue. At takimata dolores kasd takimata dolores vero diam justo.
In erat iriure hendrerit dolor lorem sit elit adipiscing et sanctus rebum vero dolor. Sanctus magna no at mazim aliquyam duo gubergren te justo. Aliquip nihil erat feugait dolore sed magna vel justo clita dolor sadipscing accusam luptatum. Kasd duo ut sed elitr sed ea eos sed sadipscing justo sadipscing. Kasd dolore tempor et eos. Nibh laoreet sit et feugait sit et nisl diam vulputate tempor facilisi. Sea kasd duo amet. Sed diam vero facer vero sit et. Et justo tincidunt erat quod praesent justo ex tempor no kasd sit duo feugiat diam diam tempor dolore vero.