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