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