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