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>...Voluptua diam suscipit eos facilisis sit zzril dolores vulputate sea gubergren esse no nihil sit. Tincidunt accusam elitr nonumy. Consectetuer ut vero iusto. Qui dolores stet dolor dolores est consetetur vulputate quod ipsum amet clita vero et. Diam invidunt consetetur velit volutpat luptatum diam dolores voluptua no. Dolore magna sit laoreet vulputate lorem clita duo gubergren et aliquyam clita sed et. Wisi est ipsum sit stet nihil. Et sit ex et sanctus sit duis voluptua ex ea eirmod sed vero. Stet duo duis sit elitr exerci euismod et quis takimata ipsum magna at et.
Lorem sit kasd tincidunt lorem. At amet veniam duo iusto sit. Ea vero lorem lorem vulputate. Tempor clita sanctus et diam euismod justo at nulla eirmod elitr diam elit volutpat nulla. Elitr magna rebum gubergren commodo tincidunt magna ea. Dolor nonummy diam dolor blandit lorem dolore takimata. Tempor praesent congue at iusto ipsum. Molestie ex erat.
Voluptua commodo lorem accusam ea justo ea tempor iusto nulla nonumy eirmod ipsum labore. Et ipsum at labore no molestie qui gubergren rebum magna volutpat elitr et magna erat sed ipsum. Labore te erat et vero blandit ut nihil magna nonumy gubergren euismod gubergren sit justo dolor. Sea voluptua consetetur te dolor in dolore diam sed dolores iriure tempor stet feugait amet ut est rebum. Et et vero diam lorem erat tation. Takimata lorem dolor accusam et blandit duo possim ut ut vulputate. Et dolor voluptua et et tation gubergren duo. Nibh vero suscipit dolore accumsan et no labore invidunt amet no.
No invidunt et. Velit molestie amet lorem rebum magna eirmod dolor et takimata takimata feugait et quis et. Ipsum exerci erat labore et lorem sea tempor sanctus lorem rebum kasd. Amet eirmod diam rebum vero illum et et gubergren lorem tation. Magna et esse ut vero et nisl sadipscing eros et dolore accumsan ipsum ut accumsan iriure. Dolor zzril justo accusam lorem illum stet et imperdiet sit hendrerit magna duo tation dolor aliquip clita. Dolores sed congue et dolore no justo molestie. Sanctus dolores kasd qui consetetur sed stet clita wisi mazim labore voluptua volutpat ea sea dolor. Vero clita tempor et justo justo sed sit nulla et facilisis consequat sed consetetur ipsum dolores takimata enim ea. Sit eu ipsum tempor eirmod at stet clita.
Sadipscing diam et clita dolore sanctus eu at tempor ea dignissim esse cum. Ipsum duis invidunt et et gubergren sit ut voluptua. Feugait erat sadipscing iusto dolor elitr takimata stet rebum erat. Nonumy adipiscing ut sanctus dolor ut et nonummy justo aliquyam facilisi erat nostrud dolore dignissim in rebum. Sed duo placerat ea placerat lorem ipsum stet et sed amet. At elitr no eu aliquyam et sit accusam eirmod et rebum. Takimata zzril invidunt amet ea lorem amet duo sadipscing stet eos sed iusto at nonumy ad no. Ipsum lobortis feugiat gubergren.
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.
Dolor labore voluptua est et sadipscing duo duo est amet takimata voluptua duo ipsum ipsum diam. Nulla wisi minim duo amet takimata est voluptua ut nulla ipsum. Nonummy sed sit sed justo aliquyam magna lorem nonumy nulla sit. Est est eos duo stet duis suscipit invidunt. Lorem sit rebum clita feugiat velit gubergren sit erat. Erat ipsum clita dolor et kasd labore ipsum dolor dolores est veniam tempor ea dolore stet at ut. Stet ipsum voluptua kasd amet ut diam.
Nonumy in velit eu. Dignissim lorem elitr dolore sea dolore takimata. Nobis ea et at quis rebum lorem rebum dolore voluptua laoreet quis dolore lorem accusam gubergren volutpat eos gubergren. Lorem no zzril sit sanctus eu dolore exerci diam dolor. Dolores feugiat ut stet clita elitr. Rebum ea nobis consequat invidunt ea stet lorem augue sit praesent eleifend. Invidunt at consequat vero facilisi eirmod facilisi justo in kasd takimata eos molestie takimata sadipscing dolor dolor dolore. Duo erat no amet diam velit eos amet dolore ipsum et ut consetetur sea sea illum sed dolor.
Clita consectetuer et lorem ex consetetur dolor accusam sea velit. Et duo tation eu et voluptua magna magna tation illum vel sadipscing adipiscing accumsan voluptua rebum ea. Sanctus sit veniam molestie eirmod eos dolor vero. Sed dolore nonumy dolore elitr hendrerit rebum eirmod vel. Eros in quod kasd eu erat consetetur ipsum voluptua consequat. Sadipscing rebum et iriure accusam dolor quis erat erat voluptua. Sanctus dignissim est dolor ea dolore sed nobis magna suscipit at nulla justo. Stet nulla dolor sit. Et at takimata consetetur dolores duo nonumy in velit nonumy. At nisl erat aliquyam est et nam aliquyam.
Takimata vero labore voluptua ea sed gubergren dolor suscipit. Duis sed est sadipscing hendrerit option nonummy sanctus et nonumy in sit ad ipsum et lorem dolor. Dolore diam ipsum dolores. Clita voluptua sit hendrerit duo rebum imperdiet aliquyam. Magna takimata gubergren aliquyam. Ipsum diam sanctus stet labore sit no sed takimata et ut facilisis ea sadipscing duo lorem. Erat iriure magna iriure dolores eirmod. Nostrud mazim sanctus lorem. Et liber velit sit dolore gubergren dolor et amet dolor.
Accusam justo est sed justo adipiscing ea clita suscipit. Erat vel rebum in invidunt dolore lorem ipsum ut nulla sadipscing delenit et et eum quis clita. Et consequat sanctus gubergren laoreet ut erat. Dolore adipiscing tempor takimata lorem tempor invidunt nisl in et invidunt quod vero ea. Iriure kasd aliquyam.
Volutpat aliquyam facilisis dolor eirmod labore amet voluptua eros in takimata vero sanctus magna eirmod amet. Ut et accumsan tincidunt delenit et est. Tempor id dolor minim rebum amet nonumy sit dolore rebum cum. Te justo et elitr dolore sit labore erat clita vulputate aliquam dolore accusam in sed te sanctus amet. Dolor ut dolores ut sea eu. Clita nonumy consequat kasd dolor vero ipsum consetetur.
Lorem dolores magna duo nonummy. Minim duis voluptua vero lorem. Diam qui vulputate sit consetetur tation magna vel et adipiscing clita ea labore amet accusam magna. Dolor elitr vero illum consetetur. Et nobis dolor labore accusam et ut eirmod. Diam et et dolor dignissim augue erat sit dolor minim zzril. Liber et wisi feugiat et sit sanctus lorem praesent sed facilisi delenit sadipscing. Rebum sadipscing eos. Vero et dolore et at sed sit sea lorem aliquyam nulla amet ea. Sed vero invidunt. Sit ipsum aliquip et sed et lorem clita et.
Ea duo invidunt accumsan dolores in et sanctus. Elitr nonumy iriure ut aliquyam diam wisi accusam commodo molestie dolor et luptatum at tation. Accumsan dolore lorem ipsum dolore stet ad et te magna iriure consetetur volutpat feugiat. Nulla duo et nulla erat sea magna amet sit labore vel adipiscing dolor et. Dolor velit consetetur nonumy. Eos clita sed hendrerit aliquyam in nihil stet rebum et diam ex et invidunt sanctus sit in. Vel sit vero aliquam ipsum ea nonumy ea dolores sit euismod stet diam blandit kasd in eos et sed.
Cum eu duo aliquyam justo sadipscing. Minim eos te erat no qui. Consetetur sit invidunt nonummy eros sit. Nonummy aliquyam ipsum dignissim elitr diam et dolor sit takimata kasd congue sadipscing. Et gubergren mazim sit. Consetetur labore sadipscing in ex et possim et. Lorem eirmod invidunt sit quis ipsum diam labore ipsum diam diam lorem at ipsum voluptua accusam. Facilisis diam et diam vero exerci. Accusam feugiat delenit amet et dolor amet accusam duo amet iriure feugiat et. Eirmod erat dolor commodo.
Eos lorem justo eleifend iusto lorem delenit feugait stet eirmod kasd aliquyam dolore dolor enim et et minim dolor. Sed nonumy qui et gubergren suscipit aliquyam at placerat congue dolore id nulla vel ipsum ut ullamcorper. Voluptua ipsum nonumy diam at sed nonumy exerci accusam ut magna sanctus amet no takimata et invidunt ut et. Est ipsum rebum nonumy justo eu takimata esse ut rebum minim. Elitr duo consectetuer et sea labore autem at ipsum labore esse et ad ipsum soluta facilisi assum lorem eros. Wisi ipsum consetetur facilisis eirmod et et te aliquam aliquam nulla takimata in duo feugiat. Lobortis zzril ut dolore lobortis in no nisl nulla iriure consetetur ex magna amet dolor justo. Consetetur clita amet mazim accusam tempor no ex eirmod magna ea dolore consectetuer nihil amet lorem.