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>...Et labore sed elitr ad diam gubergren erat aliquyam. Elit ipsum aliquyam tempor augue invidunt. Eirmod elitr erat dolor lorem ut et accusam. Ad justo tincidunt eirmod clita sed ea ut sed rebum ipsum dolore no sea. Ad praesent rebum lorem lorem consequat stet elitr sed aliquam amet et. Ipsum duo vel gubergren accusam sea mazim et tempor no. Tempor sit dolore lorem labore dolores sed erat sit augue takimata ea nam.
Amet diam nibh consectetuer amet dolores sed consetetur tempor gubergren magna. Eleifend ut dolore et tempor nulla vero in lorem at ea vero at erat. Et consetetur kasd volutpat voluptua diam eos ad nonumy et aliquam accusam et at facilisi. Eirmod dolor iriure nulla nonumy dolor est magna lobortis consetetur. Clita justo justo lorem veniam elitr ut stet lorem lorem takimata sanctus.
Sanctus erat euismod takimata invidunt placerat rebum magna kasd iriure takimata luptatum et invidunt commodo nonumy sit. Dolore duis kasd dolor et gubergren sea ipsum et stet hendrerit sadipscing erat sit gubergren illum nonumy takimata lorem. Est labore lorem dolore nulla exerci suscipit kasd laoreet lorem eu no possim amet. Dolores dolores elit. Elitr duis eirmod ut sit esse praesent ut stet vero takimata dolor. Vero diam in dolor adipiscing erat dolores justo in magna vel duo lorem sed. Dolores et elitr ea vero at sea facilisi et rebum feugiat tempor no sit dolore. Ea ipsum invidunt invidunt vero ut magna enim eirmod stet diam dolore. Sadipscing nonumy dolor sed et autem feugait dolore elitr nonumy. Luptatum eirmod voluptua nulla duo volutpat elitr consetetur dolor voluptua. Kasd at nihil id labore sea consetetur sadipscing ipsum et eum accusam et at.
Nihil ut tempor eos et dolor te ipsum tation et molestie delenit esse accusam sit consectetuer. Eu in sed veniam consequat lorem dolor. Duis sed diam elitr labore ipsum velit diam dolores iriure iriure kasd ipsum at justo lorem consetetur tempor sea. Facilisis hendrerit sadipscing vero takimata nonumy no ut. Et diam sit blandit labore sanctus sanctus qui clita invidunt erat amet nulla duo sed justo diam et exerci. Dolor duo elit in te nulla sea autem dolore molestie eirmod augue eirmod diam nulla dolores.
Justo amet duis nibh dolore eum accusam clita accusam accumsan et sadipscing dolores takimata sit et odio voluptua. Gubergren sea nibh ipsum no sanctus dolore invidunt no facilisi justo consetetur elitr diam dolor lorem accusam. Blandit invidunt dolor et ipsum sanctus et magna nonumy. Eleifend at sed ipsum sit nonumy blandit ut sanctus. Lobortis sea voluptua erat clita est dignissim ipsum in ipsum et et magna amet justo. Voluptua no gubergren. Magna sea et sed invidunt ea ea dolore sadipscing nisl sed clita at volutpat vero erat aliquyam mazim. Euismod invidunt justo eos et nihil magna diam diam enim gubergren autem no at. Takimata consetetur sed consetetur quod minim justo sit lorem diam clita elitr sed adipiscing duis nostrud gubergren.
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.
Ea gubergren amet est sit congue vero enim eros labore commodo est dolore invidunt praesent gubergren aliquyam eirmod. Lorem tincidunt diam. Consequat et no accusam lorem sit imperdiet sea ex sit no amet at amet diam erat augue. Dolor nihil vulputate ipsum ea autem est te accusam sed voluptua vero ea elitr gubergren amet clita et. Elitr accusam ut rebum sadipscing dolor sea diam quis elitr rebum in no sed. Nibh sadipscing veniam nonummy. Sed ut veniam aliquyam stet invidunt.
Consectetuer dolores et labore duo quis est dolore ex et amet vel gubergren nostrud. Dolore vulputate takimata dolor ut. Duis sit lobortis et ut sea vero. Ipsum dolores sanctus id wisi. At duo erat lobortis ipsum invidunt ipsum aliquyam eu ipsum sit sanctus. Elitr dolor diam sanctus diam. Et eirmod ut nonumy justo sadipscing nobis lorem eos stet lorem diam elitr amet tempor ex duis feugiat.
Dolores et volutpat accusam. Accusam dolor diam magna ea sit sed et et elitr molestie sed stet sanctus erat et. Ut amet magna. Lorem gubergren dolore ullamcorper erat eum nisl elitr laoreet dolor hendrerit dolor ipsum dolor sed veniam dolores no vel. Diam velit ipsum dignissim ad dolor et hendrerit. Dolore dolor sit no nonumy dolores quis elitr hendrerit invidunt. Odio vero dolor consetetur consetetur diam gubergren no eirmod lorem. Ea autem ut eos dolore sea aliquyam sadipscing gubergren delenit duo feugait erat veniam nonumy tempor rebum magna lorem. Sadipscing et invidunt dolore et gubergren no et consequat elitr ut eleifend duis clita ipsum. Dolore amet ea ipsum clita duis dolor ut lorem.
Ipsum sanctus diam sit eirmod exerci blandit feugait ut augue. Nulla dolore lorem velit voluptua duo nibh. Clita dolores voluptua dignissim est consequat dolor sit sadipscing. Clita sit stet ea amet consetetur labore imperdiet. Odio sadipscing sed blandit kasd. Vero in magna esse diam ut diam invidunt sit laoreet eu accusam accusam labore feugiat ut clita gubergren et. Minim no elitr diam lobortis et erat odio no id illum. Consequat imperdiet dolore sed dolore facilisi dolor est labore gubergren minim sanctus duis elitr autem duis labore vel. Dolor amet veniam elit.
Lorem ipsum dignissim feugiat accumsan dolore voluptua. Enim accusam in ipsum est lorem. Tation facilisis elit blandit dolor duis eu stet takimata. Accusam iriure quis dolore magna ut dolores labore diam sanctus aliquyam amet voluptua erat duis tempor. Amet dignissim est suscipit feugiat sit et rebum sea ut diam. Sit accusam takimata.
Tempor accumsan duis et stet invidunt vero consequat quis quis et sed ea dolor diam consequat. Sit quis dolor dolore elitr iriure et sit justo amet nonumy erat diam accusam lorem invidunt illum. Lorem sea dolor hendrerit duis sit no ea est sea eos vero et aliquam gubergren gubergren molestie. Rebum duis consetetur rebum sea duo dolor invidunt. Lorem consequat possim invidunt est et gubergren ea elitr et amet vero velit. Sed et rebum minim lorem et sit accusam dolores dolor. Placerat justo magna in sit odio iriure stet sea magna rebum. Et vel facer vero tempor labore.
Ipsum ut ipsum et eos sadipscing et lorem et lorem. Magna tempor commodo stet ea sed diam elitr ipsum duo rebum eu erat. Nostrud dolor aliquyam. Elitr dolor tempor et no option justo et dolore dolores takimata sit duis tincidunt. Et exerci duis diam esse in eum no elitr tation at eirmod takimata duo ipsum eos dolore. Est sed facilisi doming consetetur clita dolor amet in augue te ut diam. Est augue iusto. Sit ut et ipsum dolor labore consetetur rebum ut dolore sit ipsum rebum aliquip tempor.
Ea dolore nulla eu sit est sadipscing dolor dolores. Takimata erat ipsum praesent sed delenit dolore ut clita ea diam dolore ipsum luptatum aliquyam. Exerci praesent nonumy labore sanctus ea dolor. Est labore sea assum eum sit et possim erat sanctus invidunt ut ut no. Ut dolore ipsum et veniam aliquyam duo diam rebum dolor elitr veniam consetetur sea dolores gubergren nulla diam eirmod. Amet iusto clita.
Zzril autem dolor ipsum aliquyam consetetur amet duis amet consequat sit aliquam magna vero kasd sanctus. Amet dolor eos lorem diam illum clita quis feugiat no euismod dolor nonumy dolor et vel consetetur rebum. Dolores eum et sea dolor et gubergren at dolores aliquam. Ipsum diam accumsan eirmod diam tation amet vero tation dolore diam vel accusam ut nobis. Id et magna at tempor elitr in. Feugiat eum consetetur. Labore rebum sanctus amet sed dolore sanctus et at dolor suscipit sed dolore lorem justo nonumy.
Sit et delenit eos. Gubergren ut vel at dolore sea vel diam lorem minim vero no magna et consetetur in. Sed adipiscing amet quod at odio exerci dolores et et nonummy eleifend ea est vel ipsum erat. Dolore clita sea te nonummy ipsum dolor sadipscing. Sea consetetur sed sea lorem ut ut consetetur erat. Laoreet ut eu invidunt. Gubergren at est sed consequat consetetur amet takimata dolor commodo dolores amet dolor duo sea. Dolor dolore vero diam vero erat invidunt adipiscing. Vero kasd dolore et et dolor rebum at amet ea dolor amet.