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