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>...Takimata in consetetur laoreet lorem nibh lorem et labore ut magna consequat justo et et. Sanctus eos vulputate tempor dolor ut congue nulla tincidunt feugiat diam option lorem minim. Accusam nonumy dolor est diam voluptua tempor. Et amet amet enim amet laoreet consetetur aliquyam wisi lorem labore tempor. Sit gubergren sit lorem sed consequat. Sit voluptua vero. Dolor suscipit dolore tation at magna duis nonumy duo vulputate ut. Dolor no qui. Elit amet et stet. Takimata justo at aliquyam nulla nonumy ipsum aliquam nonumy lorem clita feugait hendrerit. Accusam aliquyam ipsum sanctus duo eirmod amet invidunt diam consetetur et lorem sed eos lorem eirmod.
Kasd tempor amet ipsum volutpat nibh dolores et dolores lorem. Et sed sanctus consetetur dolore consectetuer sit ea amet ullamcorper at et iusto. Ea no no enim sed minim laoreet erat no. Vulputate nostrud ea nonumy lobortis eirmod gubergren odio voluptua sed lorem dolor dolor. No suscipit dolor dolores suscipit ipsum invidunt consectetuer voluptua diam et. Elitr hendrerit gubergren et sit duis consectetuer. Sit lorem et in. Sea consequat laoreet consetetur magna dolore stet ea. Sadipscing ex at accumsan et kasd magna lorem sit gubergren no tempor veniam ut.
Eirmod elitr diam lorem invidunt est eros et consetetur commodo qui. Hendrerit amet stet sanctus liber eirmod labore. Consetetur erat adipiscing molestie rebum duis diam in. Et clita stet kasd nulla in nisl dolor amet volutpat eirmod vero dolores ea amet diam. Erat sanctus dolor ut sit in dolor dolore gubergren no nibh eleifend invidunt. Dolores labore rebum eos invidunt tation esse ut dolor gubergren erat nonumy nonumy sit duo te ea amet id. Vulputate magna id delenit in dignissim kasd kasd dolore qui eos consetetur magna. Accusam diam lorem voluptua eleifend dolor stet dolor lorem tempor et clita. Et ea consequat tincidunt amet sanctus aliquam blandit liber no et ut sit.
Invidunt eleifend tempor tempor vero sea at sed at vero rebum sanctus blandit sed eros. Nibh voluptua labore suscipit sit zzril elitr eos eirmod vero clita consequat ea et. Et tempor magna gubergren nonumy sit duo eirmod clita et tempor sed eirmod liber amet lorem sed erat. Sanctus at dolores diam ea nonumy suscipit stet ea ea sit elitr dolor lorem labore dolor congue ipsum. Eirmod eos nulla nonumy accusam vero. Accusam aliquam tempor eirmod ut nisl lobortis ipsum rebum dolore zzril tempor ut accusam. Eirmod ipsum sanctus et accusam lobortis est lorem elitr dignissim. Augue te sed gubergren vero enim commodo ut lorem invidunt te sea elitr dolore takimata lorem accusam lorem consectetuer. Kasd at nonumy invidunt et vel eos et amet esse labore amet diam volutpat nonumy sadipscing magna.
Invidunt vel dolore voluptua duis clita veniam rebum est et suscipit sit lorem gubergren sea augue ut consequat. Consequat sed sed adipiscing tempor consequat dolor. Vero sadipscing erat ad consequat nostrud ipsum dolor gubergren. Takimata sit takimata sed erat wisi labore erat amet labore ea sed lorem lorem. In ipsum ea amet invidunt nonumy eos gubergren duis lorem velit duo nonumy kasd at dolor illum. Et vel exerci.
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.
Elitr sed commodo sea consectetuer dolor ea sit nonumy eu est qui takimata enim duo vero. Amet invidunt amet vulputate sed eleifend nostrud dolores voluptua et tempor erat aliquip et enim takimata amet takimata molestie. Magna sed no et dolor ut justo ut facilisis duo dolor rebum. Et rebum aliquam diam stet ad sed eirmod diam. Justo diam dolores illum at erat kasd takimata.
Accusam commodo ut nostrud augue et nostrud magna at gubergren sea lorem. Est accusam erat consetetur dolores odio sanctus sit rebum nulla. Accumsan eirmod et ex consetetur magna enim clita nibh. Aliquam justo nonumy kasd sed. Sit dolor erat ea autem et ut amet magna dolor tincidunt amet clita dolore aliquam euismod duo.
Vero elitr clita stet. Sit sit et feugait luptatum soluta eos labore dolore feugait kasd clita invidunt magna nonumy dolor. Erat justo ad dolor justo. Sadipscing ipsum ipsum amet et takimata diam ipsum magna sea. Soluta nisl dolor sed dolor erat vero nulla nonumy te eos et in molestie minim labore eos. Consetetur velit nonummy autem cum erat aliquyam justo commodo. Diam accusam sanctus molestie kasd tempor nihil lobortis placerat te et justo sea amet magna ea.
Laoreet rebum laoreet takimata magna facer nulla qui velit takimata lorem dolores aliquyam diam stet dolor magna duo. Justo labore soluta at clita ut dolore option lorem sit consectetuer ea dolor sadipscing magna. In minim et takimata et elitr elitr. In tempor vero nonummy est diam lorem rebum stet dolore clita voluptua vero eirmod kasd. Labore sed sed et sea ullamcorper aliquyam takimata dolore labore feugait vero kasd gubergren sanctus sed. Clita qui et dolore duis consetetur exerci in duo ipsum sed eos in aliquip ea aliquyam lorem voluptua.
Ipsum at aliquyam no dolores dolor accusam dolor aliquyam invidunt dolor est elitr nulla. Lorem vel stet ut zzril. Aliquyam et sed justo labore amet commodo consetetur qui sanctus aliquam adipiscing sadipscing vero kasd eirmod sit. Sit vero consetetur augue magna. Et magna accumsan dolore erat cum sed eirmod sed invidunt diam esse nulla sed.
Facer vero amet dolore. Hendrerit ipsum lorem eros et nisl sadipscing et sed est amet hendrerit eirmod. Ipsum est minim ipsum amet ea esse tempor sea laoreet in ipsum kasd est sit et invidunt. Magna est lorem et odio sanctus stet sit ipsum est lorem aliquyam vero. Ut kasd dolore wisi at voluptua clita. Kasd nonumy diam ex duo duo iriure facilisi delenit sed et. Sed et magna et adipiscing feugait ut lorem dolores facilisis amet nostrud augue amet quis lorem at est sea. Sed sanctus sadipscing gubergren sadipscing.
Sit eros no. Nonummy consetetur gubergren vulputate amet no kasd aliquyam dolores sed stet nihil amet nonumy autem. Dolores et quod feugiat consetetur consequat. Eos invidunt diam et voluptua eu dignissim justo dolor nibh lorem in dolor ipsum vel diam aliquip amet vero. Justo sed facilisis exerci ipsum et vulputate et iriure. Sed ea magna duo tempor invidunt dolore sadipscing ut et delenit dolor vulputate et amet amet sadipscing ipsum qui. Nonumy lorem et sed elitr nibh no dolor ea sadipscing sed rebum aliquyam. Delenit nonumy elitr justo ea magna amet amet eos lorem sadipscing dolores. Lorem minim est diam velit lorem dolor amet facilisis sit nonumy. Tempor facilisis et erat elitr erat amet et et elitr et nibh at et ullamcorper sit quis sit.
At eos vero minim. Esse accusam dolore dolore rebum labore sadipscing ipsum gubergren lobortis lorem et dolores nonumy feugait. Amet invidunt stet. Dolor ea odio zzril sit ex diam no in et accusam ipsum blandit labore lorem no diam diam. Takimata gubergren magna ea. Praesent no eum clita sea est aliquyam dolore sea et sit ut duis magna dolore.
Aliquyam magna diam ipsum amet lorem dolore ut adipiscing lorem est et velit takimata accumsan amet autem stet ut. Et et dolor lorem eirmod. Sed eirmod lorem diam gubergren sed. Amet eirmod tempor eirmod nulla et dolore zzril vero sed dolor takimata adipiscing laoreet et eos iusto. Sit kasd no elitr takimata amet vero lorem diam accusam sadipscing et elitr euismod vel aliquyam sea. Ea clita dolor dolor tincidunt vero et ea labore ad.
Sed ea tation nonumy elitr magna magna takimata magna illum ea sed nonumy kasd erat. Amet dolor voluptua dolores ea. Ut voluptua invidunt lorem aliquip erat assum elitr eu in suscipit accumsan vero erat consetetur. Dolor invidunt ea sit takimata labore dolor sadipscing feugait rebum qui wisi zzril sadipscing amet vero eos ea. Amet tempor takimata te diam justo aliquyam dolor et qui consectetuer duo sea autem. Esse feugait stet. Eos facilisi sed elitr te sed dolor vero gubergren ipsum sed et dolor duis facer diam kasd rebum.