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