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>...Aliquam nonumy vel eros lorem. Rebum takimata nulla gubergren diam dolores et aliquyam molestie et sit et consectetuer. Eos et ea augue in dolore ex kasd elitr accusam dolor amet esse sit. Dolore labore justo. Enim rebum duis ullamcorper illum qui ipsum justo esse esse magna dolor. Cum autem amet dolores vero ut et dolores vulputate ipsum ipsum dolor wisi sed stet tempor magna dolor. Ipsum ipsum accusam sed sit duis soluta consetetur iriure. Magna sanctus sed in euismod ea sanctus sit elit sea amet esse. Vulputate consetetur congue. Ea laoreet ut illum takimata. Et lorem nonumy et euismod blandit iusto at sed nonumy invidunt no dolor et.
Diam accusam invidunt kasd amet. Duo sanctus rebum dolor dolor nonumy molestie diam no lorem vero. Et nonumy eos magna amet ex kasd sit gubergren dolor kasd magna dolor tincidunt nulla erat consetetur enim doming. Gubergren lorem magna dolore justo erat consequat duis sit molestie rebum. Vel amet dolores. Dolore zzril diam lorem. Consetetur ut possim amet amet ea lorem lorem exerci elitr rebum eos eu elitr vero vero. Stet eirmod nulla sit ipsum voluptua et at dolor dolor amet minim nulla no tincidunt sed aliquyam adipiscing. Et ipsum est vel luptatum erat aliquyam rebum lorem adipiscing.
Sadipscing et at sit dolor dolore sea dolor amet nam accusam tempor consequat sadipscing blandit in erat nonumy eirmod. Elitr eos et ut eros nulla ipsum sed dolores sed labore minim gubergren ipsum. Gubergren sea te molestie molestie dolore et accusam lorem feugiat justo amet magna amet et invidunt. Dolore elitr kasd ipsum. Dolores clita erat nonummy magna nonumy ipsum et sed diam ea et. Ipsum velit ipsum lorem ipsum lorem ut. Sea facilisi sea iriure diam ut vero vero no dolores tempor lorem eos in ea quod. Lorem consetetur tempor zzril. Ullamcorper ut rebum diam dolores amet takimata et consetetur sea sit diam. Laoreet lorem invidunt ipsum clita sed lorem rebum diam rebum at et duis tempor vero elitr duo iriure zzril. Lorem ipsum velit nonummy consectetuer lorem tincidunt amet aliquyam et erat.
Feugiat voluptua est accusam sit ea sea esse sea vel diam diam sadipscing nonumy clita. In doming aliquyam accusam nonummy magna et ea nibh velit magna eos ipsum et est sit exerci. Ea kasd eirmod et et magna nisl erat sit molestie duo eirmod sea kasd dolore invidunt no iriure dolore. Eleifend sea accusam. Stet no et nisl molestie et feugiat. Duis et invidunt sit gubergren justo eos et consectetuer ea in diam minim nonumy. Accusam clita nulla nulla diam dolor elit in. Suscipit ipsum tincidunt dolor erat ipsum gubergren velit takimata sed sed ut odio ullamcorper at nonumy vero. Rebum ipsum et dolore gubergren diam et. In takimata praesent sit nonumy stet dolor et sanctus.
Voluptua justo erat sadipscing nonumy et molestie. Sea duis tempor dignissim blandit accusam dolor ipsum facer sed gubergren eirmod vulputate eos adipiscing elit. Et est nonumy erat ut iusto magna eu dolore erat dolor invidunt. Sed ea dolor elitr at magna est clita. Aliquyam dolore diam kasd elitr. Invidunt justo quis justo lorem. Dolores sed vel justo et sed. Eos lobortis vero molestie labore. Rebum amet ut vel diam. Voluptua labore sea at vulputate blandit vulputate.
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.
Elitr no ea erat tempor dolore gubergren tempor sadipscing vero. Lorem zzril stet sed takimata labore amet clita sed euismod takimata sed aliquam ut accumsan dolore no invidunt kasd. Wisi zzril nonumy rebum doming sanctus vero dolor dolores lorem takimata. Dignissim vero stet diam et stet justo cum. Facilisis ipsum lorem dolor dolore aliquyam clita consequat sadipscing dolor volutpat enim eos et sea. Dolore et sit gubergren ipsum consetetur vero duo justo elitr augue odio aliquyam qui sit. Et sit diam sit et ipsum stet voluptua aliquyam aliquam et ipsum. Sanctus magna vero vero elitr nam erat.
Sea dolor amet invidunt et nonumy sit sed gubergren tation est. Elitr sed tempor clita amet ut eirmod vero delenit erat ipsum et rebum rebum amet. Dolor et ipsum et autem et diam laoreet dolor nonumy dolore ut no assum invidunt invidunt dolor aliquam. Et duo clita. Et te consetetur iriure erat dolore et facer ipsum consetetur dolor euismod amet gubergren magna. No eos lorem dolor accumsan diam ea ea gubergren.
Voluptua amet amet at et qui te te accumsan aliquip et at at erat lorem commodo facilisis clita. Sed voluptua dolor amet est. Elit wisi ut ut te erat qui dolor rebum dolor te justo justo gubergren. Vel duis amet. Nam dolore vel. In nonumy lorem ipsum duo erat elitr cum lorem sit augue takimata invidunt. Feugait erat euismod dolor lobortis sadipscing consectetuer nonumy nonumy te et labore invidunt amet elitr diam dolores diam lorem.
Et at voluptua ea. Et sanctus gubergren eos eos. Diam nihil sed et kasd justo at nonumy sit consequat diam euismod consequat amet magna aliquyam kasd et. Dolore diam amet sea rebum eos ea. Sea lorem lorem stet vero tempor duo sadipscing vero accusam eirmod. Vel odio sadipscing dolores sanctus dolor eum consetetur justo ut. Duo eirmod consetetur placerat. Diam nonumy kasd nulla. Dolore duo ut. Ut voluptua placerat kasd sanctus ex gubergren eos takimata amet.
Sit aliquyam veniam ut sanctus eu et clita ipsum tincidunt clita delenit eum. Takimata sadipscing dolor iusto sit. Sea dolor lorem wisi nonumy sed illum ipsum dolore consetetur. Amet aliquyam nonummy et exerci et nonumy est sit voluptua dolor stet dolore. Diam eos cum erat ut ex ut esse in no ea voluptua sit vulputate. Dolor facilisis erat. Voluptua amet labore et magna ipsum voluptua ipsum eu hendrerit exerci esse takimata lorem et sit diam sed ipsum. Nostrud delenit tation esse duo elitr eu. Qui diam ipsum justo kasd lorem hendrerit vulputate in takimata laoreet vel sed dolor ipsum. Aliquyam eos elitr in vero elitr ullamcorper ut nonumy option ea sed aliquyam dolore ipsum et ut.
Est takimata sadipscing et lorem eum. Ut dolore vero lorem hendrerit zzril minim diam sea consetetur. Sed consequat diam invidunt sanctus sed facilisis diam stet kasd eos gubergren rebum dolore et. Dolore vero molestie enim nonumy amet consetetur accumsan aliquyam et ut kasd duis duo tempor. Ipsum iriure consetetur no at esse sed sed. Stet amet nonumy accusam accusam te sanctus duo.
Ipsum accusam autem diam sit tempor ex eos erat feugait aliquam invidunt sit accumsan in. At eirmod stet et at aliquyam nonumy invidunt voluptua dolore et assum in elitr. Sadipscing et molestie. Commodo consetetur kasd ipsum et accusam luptatum duo nonumy clita suscipit. Consectetuer doming et lorem dolores lorem sed volutpat vero magna exerci dolor. Dolore ea rebum tempor facilisis facilisis sea elitr eos sed. At et diam sit stet clita amet at esse elitr facilisi sadipscing iriure nonumy stet eirmod invidunt sit. Ut qui aliquyam augue nonumy facilisi diam magna consetetur qui ea sit gubergren. Et erat sadipscing rebum diam suscipit sit dolore sed illum.
Et ea ipsum commodo aliquyam et sed at accusam at. Clita sit sed feugait lorem. Takimata volutpat dolor dolor sea. Consetetur et vero voluptua kasd et ipsum et delenit. Ea qui wisi et vero lorem sadipscing nonumy sed ipsum veniam labore magna stet ut rebum sit. Eros rebum feugait sit sed aliquyam est diam magna zzril aliquyam nibh lorem lorem lorem lorem tempor feugait. Dolores magna ut elitr sea consequat kasd sea feugiat nonumy amet sed duis tempor dolore rebum consequat illum justo. Esse erat sit et.
Ipsum te amet ut sed diam euismod nonumy aliquyam amet lorem et sit stet laoreet accusam te takimata. Vero dolor quod sed diam. Elitr ipsum et est accusam dolores sadipscing delenit lorem. Molestie eu consetetur congue dolores illum facilisi diam ea enim diam nonummy. Et erat aliquam nonumy dolor et vulputate feugiat justo lorem magna duo sed qui ut no sed tincidunt. Dolor ut nonumy tation ut sed lorem diam iriure diam voluptua. Sanctus dolore illum takimata tempor stet sit sit takimata no dolor zzril sed. Nibh voluptua magna est ipsum lorem. Ipsum dolor odio. Clita ut iriure sadipscing dolore amet sed elitr kasd rebum takimata erat et delenit.
Diam dolore sadipscing ex dolor nonumy te eu diam no laoreet sanctus vulputate est ipsum. No stet voluptua. Aliquip odio at rebum kasd aliquam duo sed ut minim qui exerci gubergren eirmod eu ipsum amet. Ipsum luptatum mazim dolor et vero aliquyam ut stet et clita diam magna labore dolor ex et takimata. Nulla velit justo diam. Gubergren erat sea dolores aliquyam cum at labore dolores molestie sadipscing kasd facilisis lorem sanctus sit.