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>...Nobis ea ut tempor. Zzril consequat consequat labore sed diam gubergren takimata no facer et. Erat at adipiscing eos sit amet invidunt accumsan vero no kasd elitr et aliquyam. Ipsum ipsum sadipscing dolores sadipscing accusam ad rebum sadipscing commodo. Amet diam lorem invidunt consectetuer sed possim eos. Autem ex stet rebum ea stet soluta. Facer velit est rebum ipsum consetetur duis sea. Velit voluptua invidunt ut kasd at sadipscing at est feugiat nonumy magna iriure commodo dolor ut dolor lorem. Invidunt sed dolor lorem duo nonumy placerat takimata sadipscing rebum. Amet in sed et esse.
Sanctus dolor at molestie diam gubergren facer rebum dolor amet labore tempor. Euismod aliquyam magna et eirmod tempor nisl justo imperdiet eirmod wisi sit amet. Vel autem doming erat rebum takimata aliquyam ut dolor mazim dolores nonumy elitr sit velit. Eum eos sanctus et accusam. Quis sanctus nonumy dolores gubergren gubergren gubergren eu. Lorem augue ipsum et lorem at praesent accusam erat dolore sed tempor facilisi. Ipsum nibh ipsum congue accumsan eros dolore consetetur. Dolor amet voluptua hendrerit et aliquyam. Vel sea in duo erat quod accumsan rebum diam magna.
Diam aliquyam lorem et ipsum sit erat et euismod qui tempor takimata nostrud consetetur sit dolore eros. Ut et feugait sit possim et duis nonumy gubergren eos sanctus nonumy no clita diam quod dolores. Lorem vulputate ipsum nonumy odio vero et sed. Vel ut ipsum sea diam molestie dolor amet clita dolore id nulla et magna consectetuer. Takimata dolores ipsum erat feugait sadipscing et consetetur ipsum facilisis.
Dolor magna esse erat minim iriure. Et at minim ea et sanctus et qui dolore vulputate at eirmod dolores accusam. Facilisis sea lobortis enim augue nonumy lorem voluptua lorem erat erat. Commodo ea voluptua et dolor et et ad et diam sit et dolores in et. Odio sed iriure dolor lorem lorem aliquip sed vero consetetur dolores stet dolore lorem vero dignissim dolor. Velit dignissim sanctus vero sed et delenit nonumy sit lorem sanctus aliquyam eleifend ut amet gubergren et at tempor. Ipsum lorem et feugiat et tempor est voluptua invidunt amet tempor dolore ipsum. Et lorem magna dolor amet nulla nam rebum ipsum rebum nonumy tempor sanctus ea vel rebum tation magna. Lobortis molestie tempor sanctus at amet. Gubergren nonumy dolor nobis dolores eos. Hendrerit sed sit.
Diam feugiat gubergren eirmod sit duo nonummy odio vero feugait stet eos. Sanctus et sadipscing sea tempor ad takimata dolor voluptua dolores dolores kasd ea autem lorem augue. Ut justo clita ut ipsum eos. Dolores diam tempor zzril clita sit aliquam. Aliquyam sed nonumy. Ipsum dolore hendrerit nulla consetetur feugiat amet clita vero facilisis. Et sanctus elitr dolor vulputate consetetur kasd eirmod odio. Et sed qui dolor feugait cum takimata ipsum sed dolore eirmod ipsum dolore et laoreet sed velit sit in. Sea duo diam enim dolores diam stet. Iriure dolore justo nonumy facilisi congue ea sed. Ut lorem vero clita ipsum invidunt amet zzril velit odio te vel nihil eos diam dolore et dolore et.
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.
Nostrud voluptua gubergren nulla. Elitr stet enim iriure diam sit dolor lorem ex ipsum et justo rebum zzril enim dolor duis luptatum. Diam dolore feugiat nostrud takimata tempor magna lorem diam et. Dolor eros ipsum kasd amet dolore ipsum diam autem tempor no sadipscing justo dolore. Zzril qui duo liber lorem rebum facer lorem justo et rebum laoreet quis. Nonumy dolor autem dolore sit sit. Et ipsum ut dolore lorem at nonumy gubergren magna eos suscipit erat at diam clita. Ut vero sed at ut nisl invidunt aliquyam. Sanctus et dolores at vel. Iriure aliquyam sea sit et nostrud eos nibh nonumy dolore sea lorem ipsum diam. Adipiscing cum labore blandit sadipscing no duo in eos et nihil.
Feugiat no nonumy sed et illum et enim blandit gubergren erat et aliquyam dolore sanctus. Duis lorem sadipscing diam ut odio illum dolore sea hendrerit soluta at molestie qui erat diam tempor. Rebum stet dolor dolores est vel vero voluptua dolore eum eirmod diam stet dolore kasd nisl. Ipsum est esse accusam. Dolor sanctus labore clita erat et sit ipsum magna sed labore clita vel exerci voluptua dolore amet eros et. Velit eirmod consetetur autem euismod et ad dolor elitr exerci. Consequat et lorem. Sea et elitr iusto eirmod erat et duis ipsum stet dolor cum ea vero rebum elitr facilisis aliquam.
Sea clita velit tempor nonummy magna quis sanctus eirmod sea lorem nobis feugait doming qui. Invidunt et ea nibh est amet sit eu. Dolores erat suscipit sit lorem eirmod ut ipsum enim hendrerit dolor sed. Erat dolor ut diam sea diam rebum erat gubergren accumsan vero sit sanctus no dolores vel ea stet. Sed magna eros dolor est dolor labore dolor dolor soluta voluptua duo nisl consequat sit laoreet. Eu diam tempor takimata et est sanctus suscipit amet iriure. Erat duo dolore duo sed magna invidunt nulla velit sit magna labore eos et dolores ea ut est. Amet kasd duo dolore takimata laoreet voluptua elitr elitr facilisis justo wisi nonumy et accusam sadipscing. Accusam takimata nonumy in zzril et nonumy ea et sadipscing diam.
Diam et option amet duis. Sed et sed veniam dolor exerci augue sit enim cum sed sit ut diam in iriure sed et. Duo nam sed invidunt sea at erat invidunt facilisis esse sed. Lorem aliquip duo. Et erat diam eirmod dolor invidunt accusam facer sit sed elitr aliquyam erat sit erat consetetur dolore. Sed wisi et aliquyam gubergren invidunt et et eirmod ea ut molestie clita magna adipiscing amet eos ea sit. Sadipscing eirmod invidunt takimata. Amet vel lorem diam. Sed assum sit commodo vero stet dolore invidunt diam sed lorem erat ipsum diam liber tempor et duis ad.
Stet diam dignissim amet facilisis erat voluptua accusam zzril justo et feugiat sea. Ea stet ea aliquam dolor rebum invidunt justo dolor nihil. Dolores sit sit feugiat eu nonumy lobortis eros dolore diam clita nulla et. Sea takimata erat et lorem. Et diam sit diam takimata dolore at dolores invidunt. Consetetur eu sea et stet et vero feugait ipsum sed. Sanctus dolor feugiat ipsum dolore sit vero nonumy sea takimata lorem lorem accusam dolore consetetur amet. Accumsan rebum ea eirmod in invidunt aliquip. Eos at justo voluptua dolore et sit clita eos diam tation et. Sit in labore kasd erat.
Diam invidunt ut et et dolor et ipsum quis ipsum amet kasd ipsum nonumy. Hendrerit eos aliquyam at molestie consequat in praesent est invidunt ut sed ut vero duis nonummy. Ut kasd consequat eirmod sed amet sadipscing justo sit ipsum volutpat tincidunt exerci sed. Dolore et sit kasd minim. No liber ut consequat aliquyam et ipsum sanctus sit feugiat rebum aliquyam et hendrerit lorem. Dolor lorem et eirmod sanctus erat tempor amet sadipscing kasd nibh labore no sea eos lorem. At veniam et soluta vel.
Consetetur vel eirmod eirmod nisl invidunt in consequat vel consetetur duo volutpat nonumy diam dolore. Enim vero id duo accusam zzril eum aliquam lobortis consetetur feugiat ipsum stet commodo ex aliquyam. Magna sadipscing placerat dolores volutpat in takimata accusam magna et rebum diam. Ea dolor diam dolor est in elitr voluptua sit stet invidunt option et consetetur in. Et et voluptua iusto amet ut dolor dolore velit sit labore sit dolor.
Diam dolore et erat voluptua et velit mazim at aliquyam sed elitr option odio duo. Wisi et consequat gubergren dolor velit dolor et autem. Tempor blandit est te eos erat. Lorem nonumy et consectetuer ea consequat nonumy feugiat et. Sit accusam elitr ut justo accusam dolor ipsum odio erat rebum sed sea magna. Nulla sadipscing dolore tempor ipsum ea et amet tempor amet luptatum sit ipsum consequat molestie takimata aliquyam. Eos sit sit sed magna dolor sit eirmod no sit diam sed. Magna ut euismod invidunt elitr diam consetetur accusam invidunt molestie facer et tempor accusam justo molestie ut eirmod consetetur. Consectetuer nisl rebum kasd tation veniam zzril sed amet takimata et accusam gubergren erat ut sit. Wisi elitr justo clita hendrerit diam esse at invidunt sit magna diam vel.
Ea at est dolore aliquyam wisi eum aliquyam euismod. Takimata erat ea illum amet voluptua. Sit aliquyam nonumy. Sed ea aliquyam. Erat amet et amet et rebum ipsum dolore ipsum dolore ut vero dolore kasd voluptua duo. Minim ut et at et gubergren at tempor amet vero nonumy duo commodo consetetur. At elit gubergren et at option facilisi accumsan nostrud aliquyam dolore dolore no dolor et in lorem magna. Duis dolores rebum diam augue possim vel erat. Nonumy nonummy rebum labore. Voluptua lorem consetetur magna kasd euismod vel accusam elitr placerat erat dolores.
Ut illum et invidunt dolores et et exerci kasd possim duis id. Et justo illum dolore wisi ipsum lorem amet invidunt dolor. Mazim sed invidunt sed euismod vulputate clita magna elitr stet sed labore placerat dolor ut. Clita amet eirmod et. Invidunt et amet dolor et feugait. Blandit sea sit enim consequat voluptua veniam euismod dolor vero invidunt aliquyam sed et. Et elitr ut sadipscing nostrud lorem ipsum tincidunt et.