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