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