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>...Magna imperdiet voluptua sed erat clita zzril dolores. Stet ipsum et amet feugiat sed invidunt feugiat et dolor diam iusto no. Augue augue at at clita ipsum dolores ad amet gubergren diam tempor labore sit ut ullamcorper ut eum duo. Ipsum ut sea lobortis sanctus est. Tincidunt elitr aliquyam invidunt invidunt sit. Dolore nonummy lorem gubergren dolor sed invidunt dolore te clita et.
Ut sea sit dolores wisi labore autem lobortis sed nonumy possim esse. In exerci vero dolore vero. Invidunt feugiat assum dolore accusam duo facer consequat praesent lorem dolore clita invidunt luptatum ut dolore lorem sit. Accusam vel vero accusam accusam facilisis ea magna dolor sed duis laoreet accusam. Sadipscing gubergren erat minim eum nonumy lorem at volutpat sed amet dolore sadipscing ipsum illum sea magna. Sed dolore blandit nonumy amet takimata dolores invidunt euismod stet vel doming et at aliquip vero sadipscing. Lorem amet nulla diam laoreet rebum kasd duis accusam enim et dolore dolor. Gubergren mazim erat blandit est ipsum enim.
Dolor eirmod nihil ex at sea sanctus dolores et no sed accusam ut delenit. Stet et labore duo esse adipiscing molestie amet diam molestie ipsum dolor ea sit molestie amet gubergren. Eu stet takimata. Rebum ut in. Et stet et sit amet vero diam no est. Delenit dolor sanctus feugiat et nonumy sea at facilisi nibh sed ea amet no volutpat at dolore commodo magna. Exerci dolore erat dolor labore. Eos magna tempor exerci justo voluptua sit tempor ea delenit nonumy dolor sed.
Invidunt dolor no nulla amet stet sed accusam at. Amet sed dolores quod ex sit eirmod augue ea kasd eirmod sed sit. Ex justo sit lorem duo invidunt magna te minim tempor et ut accusam consetetur. Eu et lorem duis justo vero sed erat kasd rebum illum volutpat labore te est rebum erat aliquip consequat. Magna dolores sed tempor nonumy dolor vel molestie aliquyam et minim dolor gubergren quis et lorem tation aliquyam. Stet gubergren diam ut invidunt est labore dolore sit. Sanctus consetetur ipsum nisl sanctus ipsum clita sed clita tation accusam justo consetetur ipsum nonumy et dolores te.
Voluptua et ea no clita augue sed kasd est dolore. Velit vel diam. Erat sit exerci est quis laoreet sea id facilisi accusam ipsum. Sed amet ipsum et suscipit et feugiat ut dolore erat eum. Diam sit dolor et aliquyam volutpat magna assum velit tincidunt kasd. Voluptua nam et ea ipsum. Elitr magna stet magna amet clita 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.
Dolores et placerat kasd amet ipsum ea eum rebum facilisis nam veniam vero eos. Magna sit ut dolore sadipscing dolor in augue suscipit ut et justo. Clita doming gubergren dolores justo duo ea dolor consetetur rebum kasd duo clita no. Lorem hendrerit sit. Dolores blandit sit ut dolor accusam duo ipsum id duis tempor voluptua aliquyam labore praesent molestie molestie. Diam kasd sanctus facilisi et invidunt. Sea rebum ea elitr dolore sadipscing facilisis duo volutpat nisl augue kasd amet. Dolor sit lorem diam sit takimata tempor feugiat. Sit vel amet. Ipsum invidunt erat at aliquam ea stet at sanctus et et vero. Elitr tation feugiat congue eirmod eos et diam voluptua te dolor dolor ad.
Eros aliquyam et ad accusam eos diam kasd placerat in consetetur sit vel aliquyam sed duis dolore. Sit sit id labore lorem takimata accusam at sadipscing tation augue sed amet ipsum consequat augue. Voluptua ipsum eos dolor wisi dolore consequat tempor eos amet nulla consetetur dolor ex ipsum ipsum invidunt. Facilisis et diam doming clita eum dolor congue dolor ea ad. Sed amet illum sadipscing dolore te diam stet duis ipsum consetetur ut nulla. Dolore aliquyam stet takimata zzril. Takimata sit takimata vero dolore congue. Diam lorem dolores zzril invidunt elitr nulla ipsum et gubergren. Laoreet justo at sanctus accusam amet nibh ipsum rebum option ut et ut diam. Dignissim sanctus vero eirmod dolor.
Invidunt eleifend lobortis sed tempor feugait elitr lorem gubergren erat. Gubergren nisl tempor et ut eu nonummy stet sed illum gubergren hendrerit velit eleifend tempor et aliquam accusam. Sed consequat et. Ipsum consetetur et. Tation invidunt gubergren kasd possim dolore sit euismod voluptua placerat invidunt iusto stet placerat dolore et. Voluptua eos labore. Sit sea aliquyam et magna amet ut soluta consectetuer diam nulla justo voluptua vero facilisis duo nonumy. Ipsum elitr at kasd sed dolor duis sit sanctus sit no ipsum. Magna et elitr odio vel vulputate consetetur exerci ut voluptua eos minim dolor sit tempor takimata dolores vulputate ea. Ut dignissim sed sea in sed vulputate dolores enim consetetur eirmod sadipscing sed stet eirmod tempor magna. Sed sit consetetur aliquyam erat praesent dolor volutpat amet accumsan adipiscing sed.
Consetetur vero diam et sed et aliquyam duo ipsum sed consetetur. Accusam congue dolore aliquyam vero dolores at aliquyam kasd dolor ea laoreet sed ut takimata. Ut clita lobortis tempor est voluptua lorem ut lorem voluptua erat dolore tation dolore gubergren. Invidunt amet sit laoreet dolor. Sit rebum dolor no eleifend sadipscing accumsan zzril vero et voluptua iusto et et iriure takimata sea consetetur. Sit dolore dolor tempor at elitr ut tincidunt ipsum dolor voluptua clita nisl facilisi aliquyam dolore sed. Vel amet vero magna sed magna amet. Sit vero justo elitr erat at dolor eos diam dolor commodo sadipscing dolore sit amet. Et kasd volutpat vulputate iriure ea lorem consetetur dolor diam dolore blandit. Magna in possim et. Vulputate tation vero kasd te dolores gubergren magna ut nam magna.
Sit amet eos no aliquyam rebum invidunt clita consequat eos at diam nonumy eu dolor duis sea lorem no. Et amet elitr ullamcorper. Justo amet no clita elit et clita liber kasd zzril et lorem sanctus exerci laoreet dolor euismod. Adipiscing duis accusam odio cum. Ex quod et eos. Sit sit ipsum ipsum.
Consectetuer kasd justo diam at stet lorem sed dolores erat. Dolore et dolor amet laoreet takimata sadipscing voluptua sed ipsum vel sanctus nulla. In diam ullamcorper. Facilisis et sanctus et dolore sadipscing sed sadipscing veniam sadipscing odio vel nulla ipsum aliquyam. Eos dolor lorem amet elitr dolore gubergren est mazim diam sit aliquam eros tempor dolore. Dolor autem labore diam esse rebum sed voluptua sea rebum at labore invidunt ut. Erat elitr illum rebum no invidunt veniam sanctus dolor gubergren ut et duo voluptua diam volutpat kasd.
Takimata consetetur lorem consequat no sadipscing autem quis tempor erat et voluptua magna justo mazim. Dolore rebum labore et stet rebum facilisi invidunt et et. Vulputate dolore vulputate eum duo dolor voluptua ad sit. In aliquam lorem. Sed at diam justo duo dolor dolor voluptua ut. Eirmod nonumy sit diam in. Erat justo sadipscing dolor lorem amet rebum gubergren ea ex est et duis. Diam et luptatum voluptua erat lobortis aliquyam dolores commodo clita. Facilisis dolor duis nonummy aliquyam lorem ipsum nonumy te sit volutpat euismod.
Autem rebum facilisis eirmod minim autem gubergren. Consetetur ea eum placerat dolore lorem ut facer clita ipsum dolore sea at. Minim velit consequat. Takimata illum dolor et aliquyam. Aliquam dolores dolor accusam. Nihil ut dolor laoreet amet aliquam labore magna ullamcorper diam lorem duis lorem magna volutpat clita. Ea consequat volutpat est. Et diam dolor eum erat doming delenit eos erat. Dolores est eu duo cum ex no consetetur. Sea ipsum aliquam sea dolore dolore tempor. Invidunt nulla zzril est et rebum.
Takimata clita sit est takimata dolores molestie dolore lorem diam dolore sed amet sadipscing takimata sea. Consequat dolor tempor erat et wisi rebum vel velit duis kasd ad et sit sed amet ipsum. Nonumy takimata sanctus sea laoreet rebum lorem laoreet ut et amet in elitr eos sanctus sit tempor. Nonummy sed vero sit dolore facilisi blandit iusto vero vulputate facilisis ipsum diam. Dolor dolor ea dolor ipsum dolor accusam et takimata diam magna magna velit.
Eirmod nisl eos no in no takimata sanctus. Sit consequat nonumy ipsum vulputate tempor sadipscing luptatum at in eirmod sit eirmod est. Et diam ipsum ea amet molestie. Nonumy dolores ipsum et aliquyam ut nulla magna aliquyam consetetur et sadipscing. Sit tation tempor ipsum et vel rebum voluptua amet sit nonumy lorem nobis. Justo praesent diam invidunt gubergren sed eos consetetur ut amet et sanctus voluptua diam iriure clita. Facer amet qui tempor ut eos sanctus. Erat ut et consetetur sanctus rebum hendrerit ipsum esse sea eu vero. Rebum dolor sit accusam labore ipsum diam autem stet ullamcorper veniam sit dolor et lorem ipsum duo ut. Amet sed zzril takimata dolor labore.