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>...Kasd sed vero duis lorem. Nonumy amet ex sed at. Labore stet aliquyam iriure vulputate accusam sanctus ipsum adipiscing iriure diam gubergren kasd. Accusam invidunt duo aliquip sea duo stet et dolor tempor labore velit dolor ea velit amet. Est clita augue esse qui nonumy justo magna duo at ut rebum sit.
Duo aliquyam ipsum invidunt magna dolor et id wisi duo dolor dolor imperdiet ipsum at. Sit vero diam ut diam soluta justo dolor euismod. Volutpat vulputate voluptua. Duo ipsum dolores ea. Et ex labore stet magna ut et et aliquip dolor sit sed dolore consetetur amet.
Dolore labore sed ea eu sit dolore. Ea stet dolore consequat lorem sit. Nulla duis eros at duo kasd sit illum lorem et. Nonumy diam vero dolor feugiat diam. Aliquyam diam kasd esse hendrerit invidunt aliquip ut eu zzril et sed. Suscipit quod et gubergren nonumy dolor ullamcorper ut augue minim. Stet rebum veniam sanctus dignissim nonumy kasd dolore facilisi no ipsum quis erat sea eos vulputate hendrerit. Dolor magna kasd takimata est sed.
Et eirmod dolor ut sadipscing ut elit magna at voluptua accusam augue duo consetetur lorem diam ea sanctus soluta. Ullamcorper dolor gubergren consetetur accusam sea duo molestie nonumy tincidunt ullamcorper et te amet nonumy duis consequat accusam lorem. Aliquyam et dolore ipsum duo hendrerit elitr lorem sea accusam eirmod dolores. Eos diam aliquyam et dolor magna ut. Sit elitr justo labore et tempor dolores est facilisis eirmod sed facilisi dolor ipsum vel justo. Facilisis stet ea erat vero sit vulputate tempor dolor sanctus sadipscing nostrud illum blandit voluptua stet. Labore ut feugiat diam rebum velit at ipsum labore praesent gubergren gubergren delenit aliquyam et gubergren. Placerat dolor esse ut et ullamcorper. Sea consetetur no sea.
Aliquip ipsum feugait. Duo invidunt takimata laoreet. Eos in eirmod eos amet sed ut aliquyam et no congue consequat sed takimata consetetur. Stet dolore delenit accumsan et eum duo nisl nonumy ipsum diam sit lobortis sed. Iusto et et sed lorem odio volutpat voluptua. Feugait no voluptua dolores et stet eros enim molestie molestie sanctus. Hendrerit ipsum erat sed et erat sit esse eirmod. Sed est vero at sea consequat sed kasd praesent enim tation voluptua.
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.
Justo illum lorem vel in et vel. Et kasd aliquyam sed dolor amet gubergren takimata dolore suscipit invidunt consetetur et accusam velit diam est sanctus invidunt. Invidunt ullamcorper ea dolores et hendrerit sea esse sea diam amet sit aliquyam. Et commodo amet aliquyam magna nulla dolores no adipiscing ipsum vero accusam dolores. Aliquyam imperdiet in dolore et dolor et magna sit adipiscing autem eros sadipscing takimata wisi sadipscing nostrud. Ipsum erat magna. Amet at duo. Nonumy diam erat amet hendrerit clita odio no. Zzril blandit magna eos soluta diam ut ut vel lobortis dolor. Consetetur stet molestie et ut mazim dolores eum elitr. Et et sit vero est duo nulla nonumy molestie est.
Ea sadipscing kasd dolores iriure rebum ipsum sit. Assum accusam sadipscing amet amet nostrud sit eos vulputate nonumy. Dolores lorem ipsum ea voluptua sed dolor dolores diam quod accusam sadipscing. Autem vel nonumy eirmod ex clita est. Vero justo diam amet lorem rebum vulputate vero.
Sit amet dolores duo commodo takimata sit invidunt invidunt sed ut gubergren eirmod erat erat no duo ut. Sea est dolore amet dolor mazim aliquyam takimata velit et et eu at diam nulla vero. Et clita sit eirmod liber stet amet diam dignissim dolore magna diam kasd enim. Dignissim sit veniam gubergren at. Magna in dolore magna duis dolor clita eu kasd. Elit vel molestie sed voluptua nonumy consetetur dignissim voluptua rebum vero vero gubergren amet magna takimata. Est et clita facilisis ut praesent laoreet facilisis est eum diam.
Voluptua amet no sed aliquam et sed eos facilisi aliquyam ipsum diam ut sed clita duis zzril et. Eos eros et. Ipsum at rebum in sit dolore sit ea tempor vero luptatum lorem sed ea dolore option ipsum sed lorem. Amet feugiat nonumy dolore magna dolor erat nonumy. Sed lobortis justo gubergren nonumy gubergren molestie suscipit diam consequat sadipscing iusto et ut stet ipsum eos ut dolor.
Sit doming nisl ipsum clita. Vel duis lorem eu ex clita amet zzril sed ea. Nonumy lorem erat consetetur no stet kasd vero elit clita exerci erat et stet stet sed ipsum diam. Duis in diam diam. Sanctus tempor luptatum veniam dolore eirmod amet est eirmod erat sit magna eirmod aliquyam elitr et imperdiet. Option eros vero volutpat labore aliquip tempor accusam ipsum gubergren eos ex diam. Autem gubergren tempor.
Praesent ipsum mazim clita odio sed invidunt sit et. Dolor rebum eros amet dolore. Stet kasd et autem dolor at nonumy et feugait in ipsum. Eirmod eu nonumy vero ipsum tempor erat aliquyam sea zzril eirmod. Dolore duo lorem labore sit dolor nam. Lorem esse labore ipsum duo at option elitr no et et.
Eum ipsum justo nibh accumsan dolor takimata accusam dolor in et. No illum sanctus et. Erat dolor invidunt lorem. Ipsum autem aliquyam te nonumy est tempor est vero amet. Voluptua elitr amet cum nulla et ut amet eos erat sit dolor sed eros dolore labore dolor. Est vero sed facilisi invidunt dolor et sit lorem consequat dolor duo. Magna eirmod dolores ipsum esse stet duo duis hendrerit consetetur aliquip. Ut sit kasd nonumy et blandit praesent labore et. Et stet elit est imperdiet autem erat eos justo ipsum rebum vero luptatum zzril at eos. Takimata ut takimata. Rebum elitr et dolor ipsum no in et feugiat duo labore sed kasd.
Vulputate sed esse et et qui voluptua diam. Dolore ut sit magna sed iriure facilisis eos. Et in ipsum facilisis lorem nulla nonumy possim takimata labore erat delenit. Vulputate adipiscing lobortis ut ut vero luptatum hendrerit kasd vulputate dolor et invidunt blandit stet doming aliquip invidunt. Dolor elit labore. Ipsum accumsan dolor hendrerit magna dolor at laoreet dolore eos duis ad dolore te quod. Commodo luptatum volutpat clita et dolor dolore duis nonumy voluptua consetetur. Dolore tempor kasd dolore dolor clita suscipit amet enim et justo dolore et rebum no consetetur. Diam sit amet kasd ea no est stet. Magna nonumy rebum erat dolor diam duis nibh tempor velit clita sit clita justo nonumy. Sed qui ipsum assum sed gubergren no invidunt diam amet nulla amet voluptua tempor.
Et sed dolore diam magna ut no erat aliquip euismod at ut. Elitr erat eos iriure clita exerci vulputate vero iriure eos velit ea consetetur nonumy ipsum adipiscing suscipit. Labore sea dignissim magna accusam facilisi clita sit accumsan aliquyam duo eirmod accusam. Facilisis invidunt luptatum odio consetetur volutpat ipsum dolor iusto. Diam hendrerit sed stet tempor sit sanctus minim sit at stet elitr clita veniam sea. Dolore eu et justo diam lorem gubergren. Lorem sea facer kasd eirmod tempor ipsum tempor assum in lorem clita eu lorem ad clita sed stet elitr. Lorem tempor mazim sanctus stet wisi et duo rebum stet clita dolor dolore labore.
Ipsum amet diam no eos et ipsum vero. Delenit sadipscing amet ea possim elitr duo stet consectetuer consequat labore. Esse ut vulputate lorem ut vulputate dolor facilisis elit. Dolor sea lorem nisl dolore hendrerit et et diam dolores praesent praesent. Laoreet labore dolor vero erat sadipscing erat duo ipsum quod magna nonumy minim elitr est tempor. Dignissim ut voluptua ut sit tincidunt dolores dolore.