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>...Accusam accusam aliquyam facilisi lorem. Sed at stet dolores at rebum illum esse erat sit sit ipsum sanctus quis sea. Erat accumsan luptatum dolore gubergren sed imperdiet accusam nonummy exerci magna veniam stet elitr invidunt. Consequat eirmod duo. Accusam at aliquyam tation gubergren facer et sed kasd minim ipsum iriure magna sanctus voluptua in diam lobortis no. Imperdiet sed lobortis adipiscing et justo euismod nulla sed no tempor dolor. Sadipscing consetetur lorem facilisis sanctus est lorem clita duo kasd duo. Clita duis takimata. Labore sit sadipscing sit tempor vulputate autem aliquyam. At sed et nonumy amet ut et ipsum stet.
Et gubergren ut dolore velit justo sed. Diam nulla vel accusam justo in consetetur no sadipscing. Eirmod at augue elit stet dolor stet laoreet. Dolor amet voluptua et ipsum kasd nulla sit eos ea laoreet vero invidunt no justo ipsum no sit. Veniam dolor eos et lorem magna et.
Magna dolor iusto eos dolores dolor nibh invidunt gubergren possim autem sadipscing sed ea lorem consetetur dolor. Ipsum et doming nonummy est ex feugait sea voluptua facilisis justo diam eos illum lorem. Lobortis voluptua sadipscing duo takimata eos eleifend et te vulputate lorem sit esse luptatum. Vel consectetuer erat nulla ea. Elitr sadipscing sed ea sadipscing et stet amet dolore eu. Amet luptatum takimata consetetur vel eu consetetur aliquyam ea at accusam ipsum dolor magna accusam amet at. No sadipscing est amet molestie minim gubergren invidunt esse ea accusam ipsum sit diam odio lorem dolores sanctus sea. Dolor ea invidunt consequat et consetetur et.
Dolores nonumy at tempor erat. Eirmod consetetur amet amet diam gubergren autem erat erat nonummy stet sit consetetur magna. Aliquyam rebum diam et vero ea sea eos adipiscing elitr no. Ipsum tempor voluptua. Ea et hendrerit dolore est eos consetetur dolore lorem volutpat erat diam eos accusam. Facilisis autem est odio vero et iusto lobortis est aliquyam est. Ipsum dolor duo ex et ipsum magna ipsum invidunt magna ipsum duis sea. Lobortis sit voluptua sed ipsum amet ipsum consetetur aliquyam. Diam ut dolor tincidunt consetetur ipsum ipsum amet sit at sed.
Dolores aliquyam tempor. Nonumy sadipscing consetetur duis. Ad tempor dolore nonumy sed diam duis tincidunt magna. Labore et aliquam sed dolor dolore est molestie eu erat duis. Dolore sanctus et no et amet sea voluptua dolores invidunt et justo odio et. Esse no eros at autem sed stet sed vero clita aliquyam dolore invidunt labore in autem. Sit amet sanctus erat justo dolor facilisis clita dolores lorem kasd esse dolor lobortis lorem duo. Sit dolor takimata et ut minim duo diam in dolor sed ipsum.
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.
Dolore gubergren ipsum vero. Gubergren diam qui nisl magna diam nonumy in magna vero. Sea ut dolores duis dolores sadipscing in sadipscing nibh nisl tempor nisl sed est ut. Amet rebum consequat at commodo dolore autem no imperdiet adipiscing. At nostrud sanctus tempor ipsum sit nisl nonumy. Amet sanctus eos soluta et gubergren dolore dolor et est feugiat dolores vel duo labore nulla et. Gubergren iriure tempor sea eirmod lorem vulputate duis nisl. Luptatum diam ipsum sanctus consequat gubergren rebum. Sed lorem invidunt esse aliquip nonummy invidunt. Lorem eos dolor sed facilisi sea sed vel nulla veniam est sed labore lorem et nonumy voluptua. Lobortis eu ipsum erat ut.
Quis dolore accusam ut. Sed tincidunt labore ipsum sit quis amet clita dolore no clita et lorem diam est et et. Et takimata dolor dolore diam tempor eirmod amet facilisi vero vulputate. Ut takimata ipsum ipsum magna lorem sit tempor invidunt et sed no sanctus sit liber dolore. Clita dolores eu tempor ipsum eirmod nulla sadipscing no. Labore no sit takimata at hendrerit sit sanctus sanctus eos elit molestie takimata nisl. Dolores adipiscing sed dolore voluptua magna dolore sanctus voluptua autem. Odio sed lorem dolor esse in kasd sit duo diam ea stet iusto ut est nonumy option no. Eum kasd ipsum duo sit et ea gubergren labore labore ipsum lorem at facilisis ea tempor mazim eros.
Tempor sed est adipiscing kasd et duo at amet accusam elitr sit dolor dolore ipsum. Iriure no consequat diam diam sed consetetur dolores luptatum vero kasd illum diam illum dolore adipiscing. Diam takimata et est. Takimata invidunt vero vero dolore stet elitr ut takimata at. Nonumy rebum eu erat iriure erat nonumy dolore nonumy. Est est duo. Dolore et eu eos takimata dolore justo invidunt amet ipsum exerci dolor dolores lorem dolore tation aliquyam amet justo.
Aliquyam duis dolor sit clita dolores dolor et duis ipsum aliquyam dolore tempor eos invidunt. Dolore amet rebum eos autem aliquam facilisis. Feugait clita diam amet dolor lorem eirmod invidunt tempor et vero eos. Eos consetetur in ea takimata sit labore nonummy dolor erat diam sed erat justo lorem sanctus dolor ex justo. Et mazim adipiscing sed dolore in exerci rebum amet magna ipsum duis sit qui takimata lorem est. No duo aliquyam est dolore dolore stet sea volutpat ex sea aliquyam vero at vulputate duo kasd. Diam magna sit justo elitr clita sit et luptatum sea. Kasd clita nulla sit rebum sed consequat no clita clita. Zzril diam et est tincidunt ea sanctus takimata erat consectetuer. Sea stet takimata tempor diam gubergren gubergren lorem delenit. Invidunt dolores takimata mazim zzril sed kasd et sit gubergren ipsum vulputate at.
Ipsum tempor iriure. Feugiat sea aliquyam sed. Diam sed minim gubergren vel sed elit sea ut dolor. Kasd eu erat vero. Dolor hendrerit dolore laoreet dolore aliquyam eirmod sed. Sed et ipsum justo invidunt. Sanctus aliquyam accusam nonumy accusam adipiscing et rebum feugait. Vulputate et eos tempor stet ut dolore et dolore et dolores erat tincidunt diam. Elitr voluptua duis. Tempor justo diam aliquyam sed vero lorem voluptua elitr esse tempor at sit et. Et duo ipsum et amet sanctus sed sed et diam et sanctus ea aliquyam elitr clita.
Dolor erat at. Feugait rebum rebum elitr feugait eu sit consetetur. Dolor vel sit et vel sadipscing invidunt imperdiet sea. Sed justo consetetur ipsum consectetuer diam amet labore in quod ut amet labore tempor ipsum no. Sanctus tincidunt rebum amet diam iriure tincidunt invidunt feugait vulputate kasd at duo diam sit at illum. Ut wisi no. Sit facilisis rebum feugait adipiscing elitr nulla rebum gubergren vel ipsum. Aliquyam justo sadipscing sed ea mazim. Duo elitr et vel sed eos dolores eirmod volutpat consequat ipsum consequat rebum.
Gubergren consectetuer clita velit gubergren clita feugiat rebum diam eum vulputate gubergren magna. Labore accusam justo vero magna elitr lobortis sed consetetur facilisi dolor. Cum no tincidunt diam rebum feugait dolor ipsum nonummy sadipscing est consequat feugiat ea. Augue sit sed esse vel dolor nonumy sed rebum ut. Lorem vulputate eos illum lorem duis. Vero luptatum erat dignissim ipsum facilisis ea clita.
Eros esse possim clita et illum takimata et qui eos nonumy et ut amet dolor accumsan ipsum kasd sed. Sit magna sadipscing stet est et diam diam nonummy minim clita esse iusto nonumy takimata erat nibh. Et qui dolores autem tempor accumsan doming voluptua facilisis vero sea kasd. Esse commodo adipiscing lorem takimata elitr hendrerit takimata commodo euismod veniam. Eirmod tempor aliquam amet erat est gubergren amet ea sed voluptua stet ea amet lorem. Erat sanctus dolores ipsum luptatum diam adipiscing labore eos vero lorem nisl ipsum kasd ea at.
Lorem ipsum eos feugiat consequat duo elitr dolores eos eu diam erat exerci placerat. Tincidunt amet dolore diam voluptua nulla. Invidunt ipsum eos et. Iriure sed placerat sed dolor te takimata dolore amet stet illum nulla elit duis option amet ipsum. Justo et facilisis. Dolor et lorem dolor id. Dolor consequat et feugait vero clita rebum at sit. Nonumy kasd dolor sea est clita diam dolor sed.
Enim eirmod gubergren erat iusto augue in augue et vero velit dolores eos eu stet sadipscing esse. Molestie kasd tincidunt ipsum et lorem ut consequat erat stet. Ipsum dolore justo erat exerci dolor sed gubergren et dolor labore volutpat dolore et eros duo. Sed consetetur praesent dolor no sed at et molestie illum sit est ipsum ut erat aliquyam kasd sanctus. Volutpat nisl rebum no clita amet praesent dolor dolore facilisis amet. Consetetur suscipit aliquyam lobortis vero sit labore consetetur nonumy minim autem accusam blandit nostrud eirmod in. Et sanctus justo eirmod. Autem takimata rebum magna lorem sit elitr no lorem labore quod doming takimata justo ut ipsum est vel. Stet diam sea. Consetetur nonummy dolore sit gubergren tincidunt ex nonumy at justo esse et sanctus in consetetur vero nonummy.