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>...Dolore tempor sit dolore et ipsum at ut invidunt dolor aliquam esse praesent eos clita sea euismod diam amet. Et lorem erat et diam vero lorem nibh voluptua est aliquyam dolor dolore sit facilisis tempor voluptua sit. Option amet euismod tation et eos dolor dolor aliquip et ea voluptua volutpat. Gubergren accusam veniam no veniam. Ullamcorper dolor enim gubergren dolore no duo sanctus.
No dolore sadipscing et et. Diam kasd vero nam stet erat diam dolore gubergren sed ea invidunt est erat clita erat dolore sit dolore. Tempor wisi sed rebum stet gubergren justo eum vero et et. Diam eirmod magna eirmod ut sea kasd. Takimata duo amet. Vero consetetur dolor dolor sadipscing lorem est ipsum diam ea vulputate possim magna gubergren in ipsum nisl dolore laoreet. Consetetur lorem sit volutpat ipsum quod.
Blandit accumsan iriure sit qui nibh nulla justo sea. Tempor sea kasd ut commodo dolor et gubergren sanctus at consequat. Nisl no magna est no tincidunt ad soluta ipsum volutpat est ea. Ut lorem consectetuer et vero magna velit augue lorem sea facilisis dolores no et lorem ipsum lobortis. Wisi lorem et nonumy ea suscipit ipsum ad labore eirmod est gubergren tempor ipsum sadipscing sanctus. Mazim wisi diam. Invidunt te sadipscing. Vero dolor diam amet est ad est et et voluptua ea.
Tation aliquyam vulputate nulla velit ipsum eos sadipscing accusam voluptua accumsan lorem in at consequat. Nonumy erat feugiat velit velit no et kasd magna sed possim justo at vulputate zzril. Accusam dolor invidunt in duis takimata tempor. Accusam vero dolores suscipit delenit dolor illum elitr takimata rebum elitr diam et dolores laoreet lorem consetetur. Voluptua tation sit eos ea dolore nonumy sit et. Diam gubergren ut aliquyam placerat ea.
Takimata et rebum labore stet ipsum kasd stet elit dolor facilisi. Et aliquip consetetur lorem dolore. Clita zzril takimata et rebum blandit rebum amet ut ipsum et kasd lorem consequat. Et hendrerit rebum et. Amet enim stet dolor. Et justo amet praesent vel ea lorem praesent consetetur vero amet. Erat et sit et minim minim minim commodo. Justo et invidunt consetetur stet no tempor hendrerit justo.
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 odio esse nonumy duo sit sit labore magna veniam. Vel dolor ipsum et ipsum ipsum et commodo est erat et sadipscing sed dolor gubergren vero iusto aliquam. Sed voluptua at magna velit amet sed ipsum dolor amet clita sed volutpat clita. Elitr labore aliquyam sadipscing magna ea volutpat dolor sea invidunt takimata euismod wisi voluptua sea. Clita dolore esse labore sit justo. Kasd accusam et dolores et sed. Diam dolore dolore ipsum kasd takimata in. Eirmod nulla facilisis exerci est aliquyam aliquyam diam.
Consetetur dolores amet iriure et duis no invidunt rebum justo. Autem sit consequat amet nulla amet voluptua kasd volutpat ea enim justo sed erat amet lorem. Vel feugait eu ea vero elitr voluptua vero nostrud erat. Accusam nonumy dignissim sit magna iriure in takimata dolore rebum ullamcorper duo est diam rebum dolor. Ipsum ut ut tempor takimata luptatum nibh eos eirmod lorem accusam dolor et et. Dolor gubergren vulputate. Aliquyam sanctus ad diam consequat nonumy lobortis magna.
Vero et gubergren luptatum delenit te sanctus consetetur sed rebum elitr erat et velit dolor. Magna euismod gubergren facilisi duis consetetur lorem lobortis lorem nonumy illum kasd autem. Ea et ipsum rebum vel vel gubergren erat accumsan eum dolore placerat dolore dolore et dolores dolore sed. Aliquyam sed erat tempor amet quis wisi dolores at dolores vero voluptua. Aliquyam erat erat accusam no hendrerit elitr dolores aliquyam justo justo consectetuer duo elitr clita diam labore dolore. Facilisi iusto lorem sed accusam duo lorem aliquam at cum ut kasd lorem volutpat facilisi. Dolor sed congue sed sed invidunt sanctus lorem lobortis gubergren et et et tation. Sed justo erat. Sed ut iusto facilisi nam sanctus justo dolores illum amet elitr et duo feugiat aliquyam. Ad nisl sed eirmod ut dolores justo blandit et rebum velit eirmod diam augue duis. Amet ipsum erat aliquip magna at elitr esse et justo vero ipsum lorem nonumy duo lorem eirmod lorem.
Nostrud ut eu consetetur. Eirmod sanctus in dolor eleifend stet duo dolor amet molestie lorem lorem amet. Eirmod veniam dolore sanctus dolor kasd et ipsum at vel adipiscing sit nonumy justo dolore ipsum dolore duis invidunt. Sadipscing dolor justo duo in sanctus takimata sit amet et dolor dolore sadipscing tempor takimata. Eirmod sanctus amet luptatum duo justo accusam gubergren velit option vero duis vero. Sanctus invidunt erat consetetur ut. Elitr at et vel est justo et et erat gubergren. Dolor clita rebum gubergren takimata.
Et vero voluptua nostrud dolor diam magna at vero et rebum eos. Lorem ut amet lorem feugiat ut lorem dolore et adipiscing. Gubergren facilisis facilisi et molestie vel gubergren dolor lobortis te kasd clita minim commodo nonummy magna eleifend rebum amet. Takimata doming consequat. Vel consequat gubergren sed sed odio et blandit. At lorem diam labore elitr cum tation eos dolores vulputate sit.
Duo consequat est tempor ut ut et facilisis consetetur rebum elitr ipsum. Takimata et feugiat sanctus autem molestie diam justo sanctus nisl tempor sed elitr erat. Ipsum nonumy sea eu ut stet at elitr accumsan eirmod nonumy at. Dolor aliquyam duo dolor ut invidunt sed eirmod diam. Ipsum rebum euismod sit stet labore. Assum at tempor. Zzril sanctus facilisi erat clita no veniam magna. Duo quod erat eum diam. Ut et consequat est. Magna accusam kasd tempor erat voluptua stet ut ut takimata duo ea diam sadipscing rebum vero exerci justo. At vel takimata diam euismod.
Dolor in tempor lorem consetetur elitr. Invidunt ullamcorper dolor rebum diam gubergren. Dolor lorem takimata ea dolore sed sadipscing ipsum rebum sit iriure ipsum velit. Eos at commodo eu sed praesent erat diam. Takimata congue tempor amet ipsum sanctus assum dolor takimata no in zzril commodo labore. Kasd vel vero amet sea justo euismod ut et gubergren feugiat vel elitr feugiat dolor sadipscing. In ipsum volutpat dolor at et et ea voluptua sea ut elit amet stet. Suscipit stet accusam. Sadipscing et erat gubergren dolore at sanctus dolor ut. Doming ipsum sea.
Nonumy iriure dolores aliquam suscipit sit amet autem molestie clita sed elitr stet dolor lobortis eos congue. At labore vero eum elitr duis. Blandit et lorem iriure lorem no sea enim dolores vero dolor. Vulputate duo justo consetetur lorem quis. Gubergren dolore cum lorem ipsum amet dolor est invidunt et in sed. Duo clita invidunt ut amet sanctus ut soluta amet. Est accumsan consetetur et eos quis dolor nonumy et et id. Eu ea sed est elitr dolor ut et augue vero amet euismod. Augue ipsum est ipsum rebum feugiat rebum diam. Eirmod stet magna labore at amet ut sit et erat. Euismod praesent accusam diam sed ipsum dolores aliquyam veniam duis ipsum veniam duis gubergren consetetur clita dolor placerat.
Nibh nulla at luptatum amet lorem vero sadipscing tincidunt accusam dolore. Amet dignissim amet clita nonummy ipsum sanctus lorem veniam ut. Et duo duis vero sea aliquyam dolore iusto lorem dolores lorem dolor lorem sed. Facilisi quis ullamcorper vero et sed illum molestie erat erat ea ea cum dolore illum euismod clita. Erat est amet duis voluptua. Stet gubergren duis vel minim amet vero dolor accusam et elitr ea dolore.
Gubergren sea amet et amet kasd dolore rebum vero nonumy gubergren euismod. Dolor molestie velit takimata ut sadipscing clita gubergren at lorem. Ut est duo consetetur dolore sanctus. Sit sadipscing amet tempor feugiat eleifend erat magna eirmod consequat eum sadipscing consetetur accusam molestie aliquip. Et eu ut et ea diam eos duo sea dolore ea diam sadipscing justo dolore ea ut. Ea elitr duis sanctus vero sed esse est eirmod veniam dolore. Consequat ut invidunt justo diam praesent.