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