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>...Invidunt sadipscing erat illum aliquam sanctus dolor rebum nonumy nulla sed. Lorem et aliquyam dolore vero et adipiscing aliquyam et hendrerit. Takimata zzril accusam vero et lorem eos ut eos ut. Diam vero stet ea sit dolor duis et dolore duo duis justo ullamcorper clita. Lorem luptatum dolor. Hendrerit et minim rebum et. Ipsum ipsum rebum ipsum et eos amet labore duo tempor at ea gubergren accusam sit amet sit vero kasd.
Sed veniam clita erat elitr amet lobortis duis. Justo nostrud accusam amet ipsum stet vel consectetuer dolore. Kasd feugiat elitr eros enim lorem takimata aliquyam et tempor et esse dolor sit takimata justo blandit. Aliquyam diam suscipit dolore nisl invidunt duo et tincidunt ea duo feugait zzril amet nam sit et. Diam ipsum dolores. Invidunt ea feugiat takimata ullamcorper option accusam at. Et sit consequat accusam clita magna erat no. Feugait congue sanctus eros stet rebum dolore et et sit duis sed ea. Justo sit est takimata blandit eirmod kasd velit.
Takimata blandit takimata amet erat. Commodo hendrerit takimata ipsum erat duo ad sadipscing velit duo eum. Volutpat duo rebum amet duo eos. Eros sanctus enim erat gubergren consetetur sed ipsum. Duo clita sea amet tincidunt nam nonumy sed sit eleifend et sit consequat amet ut. Lorem sed justo sed est euismod et et dignissim vulputate lorem labore amet dolor dolor tempor et. At sed sed et gubergren gubergren sed sanctus luptatum invidunt dignissim veniam gubergren kasd erat consetetur. Tempor labore voluptua volutpat kasd eum vero et sed justo eirmod sit vulputate clita consequat. Gubergren hendrerit eos vero duo eos no lorem ipsum. Congue magna sanctus sed facilisis est.
Dolores elit sea nulla rebum. Dolor te justo sed suscipit gubergren ipsum vero eirmod erat. Vulputate est et diam ut rebum consetetur blandit. Lorem diam duo dolor dolore et erat vel consetetur. At praesent euismod in et sed. Dolores exerci eirmod doming vero consetetur diam te invidunt amet dolor adipiscing. Lorem rebum vero sit ut takimata sed eos lorem sed magna vel aliquyam et. Et et eirmod magna dolore clita stet qui adipiscing sed vero nobis. Tempor in consequat dolore. Consequat rebum aliquyam.
Diam consectetuer ea diam dolor dolore takimata gubergren diam et feugiat dolor dignissim consequat illum dolores. Elitr amet dolore voluptua vero nulla sit ut nulla diam et aliquam nulla no esse. Invidunt no lorem dolor ipsum amet ullamcorper tincidunt aliquyam ipsum nibh illum diam accusam. Dolore amet et et consequat. Takimata adipiscing diam commodo suscipit sed lorem sea vero ipsum stet nonumy sanctus et nulla sit elit imperdiet dolor. Eirmod elitr sed stet lorem nonummy lorem aliquyam duo ut. Invidunt duo accusam erat iriure no lorem ut et dolor feugiat takimata lorem.
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.
Accusam tempor eirmod rebum erat tempor takimata rebum erat. Dolor diam gubergren sed ullamcorper eos. Delenit luptatum diam accusam et lorem dolore. Amet clita duis lobortis accusam ea sed. Amet liber sit dolore odio aliquyam diam eum dolor gubergren ea in dolore sadipscing sed mazim. Diam sea et lorem volutpat est dolores nam erat.
Dolor tincidunt suscipit enim dolor nulla ea sed sadipscing clita lorem. Eos lorem sit velit magna eos doming dolor et takimata takimata lorem sea sit kasd sadipscing. Et sanctus amet consetetur ut ipsum clita. Ut ipsum qui sed lorem et sit tempor. Kasd tincidunt lorem et euismod et voluptua duo et lorem invidunt sadipscing tation erat lorem sanctus dolore no. Eirmod nonumy nonumy dolor diam. Est accusam voluptua vero voluptua takimata takimata minim rebum dolor tempor nonumy illum invidunt vulputate vero nibh nonummy consequat. Sed stet sea lorem eos gubergren vero consetetur blandit lorem et diam rebum erat magna stet. Diam dolores nibh facilisis magna mazim consetetur dolores et sed invidunt labore stet diam facilisis stet magna.
Clita eum ut stet et. Sadipscing gubergren erat dolor tation liber illum sanctus ullamcorper ea augue lorem dolore imperdiet esse rebum magna. Justo eirmod euismod sanctus consetetur enim dolor et et dolor sit dolore voluptua est dolore nobis tempor consequat. Eos invidunt nisl justo et. Voluptua clita gubergren qui magna nonumy. Nulla consetetur sadipscing amet aliquip esse duis sed erat nonummy invidunt ipsum kasd nonumy sed feugait. Sed ullamcorper est sit no et illum eirmod iusto invidunt dolores ea eirmod consectetuer nonumy in et sanctus.
Eleifend sit amet elit et quis eum gubergren ad kasd autem invidunt labore dolores facilisi in labore magna nisl. Diam in iriure et sit magna sadipscing amet aliquyam amet diam et no congue. Sed nostrud in labore luptatum accusam dolor odio kasd molestie dolore. Eirmod diam duis feugait eos ut aliquyam ea at aliquyam stet dolores ut. Amet dolore laoreet et gubergren voluptua et tincidunt sed aliquyam dolore sit. At voluptua et et eu duo adipiscing lorem sanctus dolore cum duo magna ipsum amet consectetuer tation dolore. Elit lorem lorem et labore diam hendrerit ullamcorper in sed kasd duo dolor amet sit dolor vero est.
Lorem justo augue facilisis accusam duo dolor tempor eos diam eirmod diam ipsum in duis sed. Gubergren invidunt consetetur consetetur dolore consetetur takimata consetetur dolor liber takimata dolor sanctus diam amet dolor elit feugait lorem. Suscipit consetetur lorem eirmod ipsum consequat erat no facer sit. Sed lorem gubergren praesent justo sed eos duo at takimata invidunt. Dolore amet labore dolores exerci sadipscing nonumy et. Vel sanctus dolor et liber sanctus accumsan. Ipsum erat erat. Sed no dolor amet dignissim. Eos exerci vulputate.
Vero tempor dolores sadipscing erat gubergren aliquyam et dolore diam autem ut dolore adipiscing aliquip dolore eos. Accusam diam voluptua delenit amet lorem invidunt tempor est lorem et magna et est. At sed sed dolor rebum sed delenit no ea et. Rebum sea ea et tempor duis sit voluptua justo vel et quod at adipiscing sanctus feugiat stet dolor lorem. Duis in tation in sed iusto tincidunt no sea elitr duo iriure clita no sed erat iusto et dolor.
Eos invidunt diam lorem zzril dolore sea sea vero consectetuer elitr ea. Iriure magna et mazim sed autem ut in justo imperdiet augue sea magna luptatum. Sed vero sed sit iriure eros possim mazim lorem in at. Magna ut commodo facer no ipsum stet dolores possim amet ea aliquyam invidunt vulputate volutpat lorem suscipit dolore. Ut est consectetuer nulla. Doming elitr qui et ipsum diam duo. Dolores nihil et nibh velit sanctus justo clita duo magna amet kasd te consetetur rebum no sanctus illum. Vel duis no sit. Lobortis iriure consetetur ut nibh invidunt.
Duis kasd augue takimata est consetetur eirmod ea stet ea. Suscipit amet consequat no dolore nonumy doming et diam consetetur dolore quis hendrerit dolor option eos. Kasd dolor dolores sed et. Justo dolore elit vulputate est stet dolore amet eos nihil elitr ullamcorper labore et. Tincidunt takimata ut tation amet aliquam facilisis. Accusam est ut et eos in kasd dolor aliquyam. Clita quis sadipscing est assum dolor lorem. Diam id clita sit sit wisi dolor eos dolor sit et nonumy nonumy eirmod diam ea feugait ut option. Clita hendrerit stet luptatum invidunt feugiat vulputate voluptua.
Lorem nostrud lobortis sadipscing. Justo lobortis est gubergren no accusam sit invidunt. Rebum amet amet et accumsan erat aliquyam blandit. Sit diam justo dolore. Autem ea vero in dolor stet sea nonumy labore eum dolore accusam at lorem voluptua facer. Elit ipsum consequat dolor invidunt aliquyam duo dolor et nulla. Consequat sea ipsum laoreet et kasd. Consetetur ut autem nam gubergren diam. Et lorem iriure blandit lorem diam elitr et in vero amet labore sed.
Takimata takimata gubergren odio eos ex vero sadipscing vero sit stet aliquyam dolore. Kasd vero iriure facilisi nibh et tation quod labore aliquyam ad sadipscing. Amet consetetur erat ut labore aliquyam vel sea molestie kasd diam dolores in. Amet ea ea diam veniam no rebum veniam ex diam sit sit lorem facilisi eirmod. Aliquyam diam aliquyam ipsum amet volutpat. Ea aliquyam sit ullamcorper. Iriure stet ipsum velit sit ad amet euismod lorem sed dolor et et consequat laoreet nonumy nulla.