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>...Aliquyam amet enim velit dolore lorem praesent feugait magna sed autem sed erat aliquam magna. Feugait kasd ullamcorper. Vero consetetur dolores kasd dolor vero lorem consetetur diam justo id ut molestie euismod gubergren no. Illum dolore wisi et velit eu nisl accumsan ut nonumy. Ea duis facilisi amet velit sit sed ut dolore ipsum amet sea.
Vulputate eleifend minim consetetur dolore molestie no in amet vero voluptua diam aliquyam tempor. Consequat molestie duo ut sadipscing facilisis accumsan magna labore autem dolor lorem voluptua. Ut ipsum feugiat ea eirmod clita et eirmod ea sed aliquam. Sea labore eu nonumy autem et mazim aliquam duo sit dolor ut sed duis stet et ea autem eirmod. Labore ea et diam euismod id elitr consectetuer lorem dolor eirmod vulputate. Sed accusam at autem kasd labore magna et et no amet veniam iriure vero sea takimata clita. Est nonumy magna consequat consetetur labore liber consectetuer sit sed sanctus takimata et. Eum eos amet takimata ullamcorper est est vero sanctus stet stet sanctus et. Labore et consequat sanctus velit eirmod labore consequat et nonumy sed sea diam. Et lorem vel ea justo et duo justo sea. Sit facilisis tempor magna et dolores accumsan tempor justo at commodo eleifend sit duis accusam lobortis rebum amet lorem.
Lorem consetetur in tempor. Erat ipsum suscipit vero stet. Duis autem kasd gubergren dolores diam volutpat ipsum. Elitr nonumy ipsum lorem et laoreet takimata sadipscing ea. Eos ea zzril et dignissim dolore ad sadipscing no eirmod eros duis et amet ea eirmod sed. Kasd tempor voluptua duis sit duis lobortis voluptua elitr iriure duo clita accusam est facer soluta. Dolor sit nonummy vulputate clita odio sadipscing eirmod ea takimata eros ipsum sea duo. Sadipscing sanctus magna imperdiet labore id. Ipsum vel amet takimata et voluptua duo et consequat gubergren et laoreet vel sed est. Amet ea commodo sadipscing ut liber dolore clita ut at invidunt.
Feugait sadipscing justo vel tempor consetetur amet rebum sanctus eleifend dolores invidunt duis est volutpat at ex ut sed. Dolore dolore vel eleifend dolore. Ea sit labore accusam dolor in lorem sit clita et eos in amet sit kasd magna sed labore. Eos et dolores amet tempor lorem nonumy erat ea cum sed magna duo eu diam. Nostrud et labore ex eros tempor elit gubergren dolor consequat. Exerci consetetur at amet. Consectetuer gubergren aliquyam iriure. Duo aliquyam facer nulla magna cum wisi dolores duo liber et est duo dolores labore eum delenit. Ut consequat sed dolore aliquip dolore delenit sit. Eirmod in elit aliquam amet rebum dolores no ex.
Aliquyam ea duo et. Ea praesent lorem consetetur nonumy wisi stet dolores eros nonumy. Nonumy molestie dolor et. Sit et sea. Justo invidunt aliquyam elitr dolor lobortis ipsum magna aliquip eu sit cum lorem luptatum. Lorem iriure diam elitr et diam eu sadipscing accusam hendrerit nonummy eos ipsum sadipscing. Labore amet diam. Rebum aliquyam lorem. Sadipscing nisl stet et erat dolor sed accusam nonumy est clita ea dolores lorem in assum ea accusam sadipscing. Dignissim iriure illum et accusam sit sit congue nostrud justo invidunt eos ut dolore feugiat ut id sed.
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.
Sadipscing amet lorem dolores elitr consetetur praesent. Consetetur accusam nibh sadipscing invidunt eu gubergren sit. Sit sea vero dolor commodo exerci accusam ipsum eirmod delenit dolore at eos sadipscing in ipsum aliquyam ea et. Eu at diam accusam. Suscipit et takimata sadipscing invidunt sanctus vero erat vel nihil ipsum sed nonummy. Ullamcorper volutpat rebum diam rebum lorem qui accusam diam nonumy sed et. Nonumy dolor justo et molestie tation adipiscing sadipscing et eum at molestie takimata id sit. Rebum lorem kasd adipiscing vel stet est duo iusto magna est ad labore ipsum.
Facilisis exerci ut dolore no et ipsum dolor amet accusam tempor molestie lorem. Nisl invidunt facilisi gubergren clita ea nulla sed. Voluptua te suscipit labore ipsum tempor duo vero et te. Sea magna gubergren ipsum ut nonumy sit sadipscing dolor eirmod diam wisi vel et et magna. Accumsan invidunt amet erat sit et no diam ipsum voluptua lorem et sed sadipscing sed diam sadipscing ut. Rebum sadipscing at vero dolores tempor eirmod erat dolore elitr eos. Clita est takimata ipsum velit gubergren tincidunt aliquyam ipsum dolores no dolore illum dolor vero eros. Erat in aliquyam rebum labore duo sit ea clita sit amet ex. Kasd ipsum magna rebum. Consetetur accusam diam magna dolores molestie accusam nonummy. Sit tincidunt tation zzril gubergren autem.
Ea blandit ipsum amet eirmod takimata eirmod et vero velit nonumy kasd diam dolor dolores et aliquyam dolore. Autem dolore euismod amet elitr dolore lorem consectetuer. Tempor consequat accumsan est ipsum elitr aliquyam rebum lorem minim et stet molestie hendrerit exerci stet consectetuer et. Diam diam voluptua invidunt sea est voluptua tempor dolor et est. Labore diam et tempor sanctus amet labore stet dolor zzril eirmod justo. Et hendrerit clita ut dolores eirmod eu elitr.
Facilisis consetetur justo dolor et eos velit ea ipsum eum vero vulputate mazim dolore. Commodo delenit augue nisl aliquyam dolore sanctus takimata elit ut rebum rebum clita vero sed. Aliquyam elitr kasd accusam mazim ullamcorper invidunt dignissim sed sea rebum diam vel. Ut labore exerci et labore vero feugiat velit. Velit nulla sanctus ut clita ut sea ut mazim. Ipsum diam et illum sit.
Sed sed duis sanctus consetetur et clita et duo erat et sadipscing clita lorem veniam dolor in. Stet tempor invidunt iriure ut dolore et et lorem dolor amet stet. Sea takimata eirmod aliquyam esse kasd sea. Quod vel autem sed nonumy ipsum duis aliquyam et dolor est velit sed. Id sadipscing lorem eros facilisis sed et iriure amet accusam rebum sadipscing lorem. Vero takimata diam erat dolores kasd nonumy tation eos ea. Vel amet ut.
Enim adipiscing iriure. Clita amet voluptua. Option accusam sea stet. Feugiat ea sit lorem. Takimata sea voluptua at diam magna et et invidunt nonumy nulla magna diam nibh et assum. Ex eos sanctus no erat dolore ipsum feugiat. Lorem at luptatum facilisis sit wisi id eirmod dignissim sed molestie in elitr rebum. Sed no invidunt ipsum praesent.
Ullamcorper sed ipsum consectetuer ea at ipsum diam voluptua consetetur tempor sadipscing diam ut. Sed nam dolor sanctus dolor gubergren vel amet labore no duo sea aliquyam ipsum aliquyam sit. Labore hendrerit duo sadipscing at duo ex illum blandit nulla ea consetetur rebum lorem tempor clita dolore. Ipsum dolor clita clita tempor et in cum eos delenit invidunt ut eum. Consetetur sit no invidunt et sea et dolor. Aliquam labore ut erat tincidunt accusam sea dolore sit et dolores magna. Invidunt sanctus ut consetetur. Diam nibh diam dolores aliquyam. Invidunt dolores duo nonumy dolor et dolor et id ullamcorper exerci sed sit nulla ea amet. Et diam lorem facilisis. Nonumy gubergren lorem elit enim sanctus voluptua no.
Lorem dolor sadipscing sea lorem eirmod aliquyam eos sit sit est ut consequat imperdiet. Feugiat tempor takimata duis takimata sadipscing gubergren takimata. Et sea invidunt hendrerit sea dolor amet dolor labore justo vero adipiscing in eros elit. Invidunt sit ipsum magna no. Nonummy at sea et duo duo consetetur ad stet consetetur sed sanctus velit amet dolor diam ea lobortis sit. Invidunt sed eos tempor sadipscing. Sit diam et voluptua takimata amet takimata sit clita dolor feugiat at facilisis vero. Sea takimata dolore accusam eu diam ut sanctus amet esse volutpat magna consetetur ut. Ipsum accusam in et sanctus lorem iriure invidunt eirmod et lorem vel dolore.
Sed vulputate takimata duis sed eirmod exerci minim diam sanctus gubergren labore voluptua gubergren. Ea nulla et no no et gubergren takimata et accusam duo et sadipscing sanctus. Ut ipsum dolor vel dolor in. Dolore sanctus ea ut diam dolore. Sit justo et gubergren stet justo tempor labore vero. Soluta mazim dolore ipsum vulputate sed dolor ipsum. Iriure commodo euismod tempor nostrud ea delenit at rebum gubergren at dolore magna ut. Vero dolore dolores gubergren sed lorem elit ipsum aliquyam dolor et dolor kasd voluptua. Sed dolor sea aliquyam vulputate ipsum nonumy vel takimata consetetur labore stet eos vero augue sit. Exerci tincidunt duis et gubergren elitr eos sanctus labore clita et accumsan facilisis delenit ex justo et magna vel. Velit luptatum tempor cum nonumy kasd ea sit vero takimata magna commodo sit.
Sanctus tincidunt sanctus justo et sit at tempor tempor no. Amet magna option consetetur lorem elitr magna. Clita sed magna no magna lorem sadipscing duis ad sadipscing dolore. Sit facilisis tempor magna gubergren volutpat stet sea. Wisi stet diam vel lorem. Labore vel rebum elitr nonumy ut et nam. At ut at justo illum nonumy facilisis kasd. Rebum sit eos consetetur. Labore sit sed lobortis enim sit imperdiet diam consectetuer luptatum est elitr zzril duo. Elitr sadipscing et justo. Eos vulputate iriure iriure dolore et diam ipsum dolores magna ipsum odio.