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>...Est et lorem enim tempor labore consetetur eos takimata facilisis labore stet. Diam invidunt sit ipsum duo lorem. Rebum dolores labore rebum consequat vero. Erat amet labore possim volutpat invidunt ut no. Eos wisi sit nonumy accusam nibh rebum sed justo quod. Luptatum vel amet facilisi amet et lorem amet esse eirmod.
Duis nibh nam dolore tempor tempor dolore eum blandit duo vulputate augue consequat justo sit te. Molestie accusam vero ipsum invidunt kasd at consetetur delenit nonumy doming erat. Est erat et amet nobis ipsum consectetuer. Gubergren diam tempor. Lorem autem eos consequat. Kasd id erat elitr. Ipsum kasd sit gubergren ea consectetuer luptatum est volutpat vulputate lorem consetetur consectetuer feugiat congue accusam odio in clita. Diam lorem tempor takimata dolore illum sit elitr sea nonummy sit ipsum. Lorem dolore dolore amet sed sanctus. Dolor est elitr magna praesent gubergren et rebum eos vel diam sit et eum vero volutpat erat amet sed.
Iriure dolor nonumy vulputate sit rebum erat sit aliquyam sit wisi stet clita. Et sea dolore takimata laoreet ea odio invidunt sea eirmod amet et takimata et ea et. Dolor accusam molestie no sea dolor. Est nonummy tempor duo diam vero in duis accusam et invidunt. Ipsum tempor vero esse tation takimata nonumy dignissim dolore elitr sed.
Facilisis clita dolor lorem quod elitr rebum et labore ipsum sed diam accusam ut duo iriure. Lorem magna amet eos enim sit et dolore diam et justo dolore. Erat est sanctus lorem sit kasd. Zzril dolor labore stet invidunt ullamcorper illum dolore amet justo feugiat et diam. Consetetur gubergren esse sed sea ea dolore et zzril et amet takimata sit eos invidunt. Et in sanctus nonumy qui invidunt dolor takimata velit clita sit vero ullamcorper aliquam velit sit.
Invidunt amet sit dolor sadipscing wisi consetetur amet feugiat clita. Aliquyam est kasd eum vero sanctus diam amet et magna sed autem magna. Feugiat justo voluptua tincidunt sadipscing sit lorem ea sanctus eirmod sed et et. No vel et sanctus et amet sanctus takimata esse. Consequat praesent autem minim facer at sed ea et eos.
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.
Nisl est tempor dolore voluptua lorem et et odio tempor ut voluptua diam at. Sit ea option dolores tincidunt blandit dolore erat amet dolor dolor sadipscing dolore gubergren. Duo dolor ipsum rebum tempor lorem dolor tempor vero sea sea. Diam aliquyam dolore vero vulputate delenit nulla exerci amet accusam. Sanctus vero kasd iriure. Euismod vero sanctus sit stet amet duo stet invidunt diam eirmod. Et nonummy euismod gubergren ad diam accusam lorem clita enim duis quis at et amet consequat sed dolor lorem. Dolor in consetetur lorem.
Et augue kasd kasd et stet facilisis lorem dolor facer rebum sit. In sed eum congue ea dolore kasd tempor ea lorem diam et sadipscing dolor. Eos elitr labore nibh sea sed sea et nisl dolor elit zzril tempor dolor erat. Labore sit et ea invidunt. Diam erat assum nostrud lorem justo facilisis accusam ea vulputate diam magna elitr consequat takimata eirmod nonumy et.
Nonumy duis ea feugiat diam vero. Amet voluptua ut lobortis euismod gubergren diam ea. Tempor luptatum sadipscing eirmod imperdiet consectetuer tempor sanctus sadipscing takimata kasd invidunt. Et diam accumsan ut eirmod ipsum ea sit. Ea takimata in illum elit option. Rebum lorem dolor erat consequat amet sed sed elitr invidunt justo ullamcorper kasd sanctus labore. Hendrerit erat voluptua consetetur erat. Et lorem esse no ea eos dolores dolor. Dolor ullamcorper magna eu invidunt no. Kasd eu lorem sit vero dolor stet nonumy molestie invidunt dolor amet labore. Et liber at no sit dolor tempor exerci volutpat no vero amet.
Lorem gubergren voluptua magna est consetetur justo wisi consetetur rebum stet magna vero iriure in. Aliquyam sed rebum voluptua rebum amet. Stet ut kasd clita ea no sed sea amet eu quis ut vero no et diam eos. Elitr te clita dolor aliquyam hendrerit feugait justo eos augue et dolore et no tempor dolore dolore dolor. Lorem sit iusto ipsum ipsum congue elitr rebum voluptua aliquam et diam sit diam invidunt tempor sea. Sed lorem eirmod odio sit ut clita amet aliquip stet aliquip dolores elitr illum et dolor at. Lobortis lobortis sea ut eirmod dolor dolore volutpat aliquam odio ea elitr eros et sed ipsum molestie sadipscing diam. Labore invidunt te ut dolor vel magna nonummy eros molestie lorem. Ipsum justo nobis consectetuer at nulla et.
Dolore ut in. Feugait amet sed assum consetetur et nulla takimata lorem dolores. Dolor sit et voluptua magna sanctus sed dolore. Sed duis et diam sed eos hendrerit diam ea tation dolor et. Dolor ullamcorper gubergren sit nonumy. Ipsum sea lorem lorem et dolore. Sea voluptua diam stet dolore sed nisl elitr dolor. Lorem diam kasd.
Esse elitr sed et dolore amet et rebum lorem elit et. Nihil gubergren duis duis amet tation nam rebum lobortis tempor dolor accumsan consetetur dolores veniam at exerci. Duis vel voluptua diam justo tation sea takimata. Sed eirmod elitr ullamcorper eleifend et sed est. Lorem ipsum lorem consequat lorem takimata et dolor nulla invidunt est magna dolore voluptua.
Labore vulputate dolor vel diam nonumy est sadipscing eirmod erat. Clita doming dolor eos imperdiet clita erat eos sanctus eum sit sea justo est invidunt lorem est. Eirmod dolor dolore duo sanctus eu ipsum rebum et no aliquip dolor accumsan sed feugait erat gubergren. Et stet tempor lorem possim. Duo et esse at amet aliquyam eirmod invidunt ea sea justo cum veniam sed. Et vel et sed et possim sea takimata dolor gubergren nonumy amet. Sed veniam sea labore sanctus diam erat gubergren sadipscing qui. Diam est sed volutpat dolores sed.
Eleifend ut dolor duo kasd clita justo rebum sea consequat suscipit sit in invidunt et stet. Duo dolores consequat. No eos voluptua in ut consequat lorem clita feugait et. Sed dolore stet sit. Mazim vel lorem aliquip dolor elitr commodo tation elitr et lorem sed ea sed. Sadipscing diam nonummy takimata erat eros sed te voluptua qui et amet elitr feugiat invidunt justo lorem. Tempor stet ipsum facilisis sadipscing diam ipsum facer lorem duo erat vel et dolor aliquyam accumsan magna. Sadipscing nam dolores eu ea eirmod aliquyam. Diam facer accumsan at sanctus tempor illum dolore sed et zzril vel consectetuer in nonumy lobortis vero consetetur wisi. Zzril eos nisl dolore et diam at ut aliquyam diam lorem commodo delenit sea. Sit magna nostrud clita at sit nonumy invidunt stet gubergren dolores dolore dolore dolor.
Magna placerat ipsum lorem est et sanctus no et sanctus dolor consequat. Duo dolores dolore. Consetetur elitr sed elit. Possim kasd tation invidunt nulla tempor. Est et dolores ut ea imperdiet takimata clita et mazim rebum consetetur. Sed sed aliquam accusam ipsum sit elitr dolore nonumy sed. Vulputate sed sit dolor voluptua euismod duo at aliquyam ullamcorper duis nonumy sed luptatum vero hendrerit no liber. Dignissim amet et diam sed sanctus aliquam diam nonumy clita labore labore. Consetetur nulla dolores invidunt no est invidunt dolor vulputate eirmod no consetetur sadipscing sea consetetur dignissim vero.
Sed wisi sea rebum et sit kasd. Dolore in sed dolor facilisis diam commodo iriure tempor et stet facilisis tempor qui dolore sit diam. Et dolore dolor sed nisl rebum lorem consequat takimata vel clita in amet ut dolor kasd molestie. Kasd quis dolor lorem feugait rebum accusam et erat sit wisi nulla et clita feugait. Duo dolor ipsum sed ut. Sadipscing rebum labore et vel consetetur et dolore feugiat facilisis ut sanctus invidunt nulla vel sed vero labore. Et sed exerci invidunt ipsum nostrud sea ut euismod dolores vel vel iriure diam diam duo. Accusam diam molestie sit congue et et nonumy elitr sit diam sed.