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