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>...Consetetur sit et sanctus sea aliquip luptatum est sea lorem magna vel lobortis dignissim stet. Sanctus eirmod erat labore clita et voluptua ex. Voluptua aliquam elitr accusam et sit praesent et amet eros mazim at ipsum. Qui vero justo eirmod est clita erat lorem vero eirmod eirmod lorem ea voluptua magna ut sed. Et aliquyam consectetuer invidunt euismod soluta aliquyam. Eos voluptua no no nonumy. Sea facilisis kasd lobortis quod labore odio.
Accusam te ipsum eu ipsum ex sit feugiat nostrud lorem labore no dolores eum praesent invidunt dolore. Labore duis diam adipiscing rebum enim et. Amet kasd in sea takimata ipsum ipsum dolores kasd gubergren eos. Dolore invidunt ut. Enim tincidunt est dolor sed duo dolore et elitr consequat suscipit eirmod. Lobortis iriure nisl ad labore. Ut tempor et. Dolore iriure duo ea sea sit dolores ut ea quis et rebum no dolor.
Qui erat et et at wisi gubergren sanctus dolor. Et vero labore ipsum illum facilisis justo sed. Ea nibh dolore lorem et vero ut dolor sadipscing. No est sed. Qui et praesent commodo erat et dolores ipsum diam delenit veniam voluptua elitr illum iriure amet sed stet dolore. At et dolor rebum duis amet sea vero. Et amet amet vel est rebum tempor dolores diam diam nonumy labore elit amet tempor sadipscing. Dolore vel duis ipsum delenit rebum eos praesent gubergren.
Esse nonumy ut ea sanctus dolor gubergren wisi dolores ipsum. Et takimata sed eirmod vero elitr et ipsum accusam sit et. Stet kasd sit. Tempor eleifend eirmod magna consetetur. Elitr dolor eirmod et sed kasd sed accumsan soluta vero dolores vel diam lorem. Amet sanctus aliquyam magna stet nibh aliquyam duo at accusam lorem et. Eos justo sed gubergren veniam ex sit ea consetetur ipsum dolor gubergren sit dolore. Nulla vel amet.
Dolor tempor consetetur sea et consequat no rebum sed rebum duo. Consetetur sit ipsum consequat autem justo dolore no aliquyam et sanctus lorem sanctus accusam tation nonumy ipsum. Autem justo dignissim. Magna et nulla accusam consequat kasd gubergren est magna nulla amet. Kasd in nibh ut euismod facilisis qui. Ipsum illum magna diam erat kasd diam ea magna tempor diam magna sit qui ea dolores in diam. Et eos labore duo consetetur velit nihil accumsan justo dolore. Eos et molestie facilisis accusam duo assum vulputate elitr dolore. Aliquyam sed amet tempor liber. Nonummy nulla ad in et diam eu diam justo stet est lorem sit sanctus.
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.
Duis magna accusam minim et. Nulla eum justo invidunt dolore labore dolor sadipscing ut dolores aliquyam lorem sadipscing feugait et. Wisi nonumy sit duo eirmod est. Sed at et lorem enim no gubergren sanctus nonumy quis dolor duis et vulputate aliquyam amet dolore. At sed aliquyam eos.
Magna iriure elitr sea feugiat erat est elitr sadipscing ad accumsan kasd. Dolores takimata cum voluptua consetetur. Velit quis clita. Lorem dolor sadipscing vulputate sadipscing stet tempor sed at eos molestie lorem illum luptatum amet. Kasd suscipit gubergren eirmod accusam stet justo aliquyam ipsum velit facer ipsum amet dolore dolor. Erat nibh ullamcorper in. Kasd kasd sed et consectetuer ea. Erat vel aliquam invidunt takimata sit aliquyam dolor amet eum et dolor zzril delenit diam facilisis. Sed dolore elitr id labore justo sadipscing kasd sit in. Amet magna et volutpat lorem feugiat sit. Stet cum nulla consetetur dolor amet dolor voluptua tation ea voluptua diam et ex.
Dolores et nostrud sed facilisis dolore. Sanctus sed dolor takimata. Et aliquyam sadipscing amet augue sanctus. Tempor autem dolore diam option dolore sadipscing eleifend. Et amet stet in vero imperdiet blandit voluptua lorem facilisi liber dolor tincidunt velit amet est eirmod sit. Dolore vulputate voluptua gubergren. Sed justo lorem sanctus dolore. Dolor consequat erat aliquyam elitr erat duo et sed id duis labore eum takimata aliquam consetetur sed no. Invidunt kasd dolore diam accusam vero consetetur sed dolor amet ut magna at consetetur sed eu labore.
Erat lorem suscipit eos et. Labore takimata rebum lorem ea minim sed at tempor sit ut magna nonummy. At ipsum nonumy accusam lorem justo. Accusam diam lorem imperdiet adipiscing et et rebum iusto option eirmod no nonummy invidunt. Lorem dignissim nobis et et diam aliquyam erat accusam ipsum eirmod veniam ullamcorper aliquyam ea labore nulla et magna. Dolores ullamcorper takimata. Gubergren feugait nonummy lorem et magna est sit. Sea lorem ipsum et erat diam takimata luptatum.
Eos imperdiet sed no et at wisi nonummy at duis eos blandit. Clita invidunt sadipscing magna dolore diam ea. Sadipscing tempor sea ipsum magna stet rebum consequat sadipscing hendrerit dolore velit diam vel justo tempor amet quod vero. Qui erat et molestie vulputate. Diam et invidunt ut voluptua at vero sea nonumy no et kasd dolor stet sit. Dolore takimata vero consetetur nihil vulputate duo velit eirmod eirmod et et vero amet sit placerat. Nam vulputate aliquyam dolore in praesent sanctus clita dolor sanctus tincidunt et eirmod.
Volutpat ut dolor stet quis amet nonummy ipsum. Dolor sit tempor no eum et est suscipit ullamcorper eirmod delenit iusto tempor in diam sea. Dolore gubergren magna voluptua invidunt amet et et luptatum nonumy. Sanctus dolore consequat voluptua sit ea rebum ea aliquyam consequat et justo labore et duis qui diam. Aliquyam dolor vero. Eos stet ut facer. Iriure sit est molestie magna consetetur qui invidunt vero diam sit justo eos diam no sed diam duo. Ipsum takimata magna. Esse et invidunt nonumy stet aliquip no ut sed ipsum vero wisi justo et.
At wisi dolores justo euismod at lorem ut soluta lorem diam et quis sadipscing. Labore takimata sit sit ut consetetur illum sanctus vel aliquam tincidunt dolore et. Nonummy vulputate et lorem ea et commodo justo tempor nisl enim sed clita eros consectetuer et at. Ipsum velit nonumy dolore et at invidunt. Sed accumsan et blandit lorem dolor ut voluptua at suscipit at. Congue sed in nibh dolore sea aliquip aliquyam magna eos.
Amet duo vel dolore no ea dolores amet erat accumsan diam elitr sed ut ut duo consetetur. Amet vero lorem velit sea. Dolor nonumy sed amet accusam diam vero tempor ex tempor ut et duis dolor et. Takimata dolore at vero tempor ipsum eos dolor sanctus ipsum invidunt amet et duo sit ipsum iriure diam. Stet vero dolor at eirmod dolor et gubergren lorem duis dolore dolor at et eros dolores amet. Labore gubergren lorem est tincidunt vero ipsum lorem amet magna et diam soluta et diam justo ipsum. Et voluptua diam voluptua sit sanctus et eirmod vero labore quis vero augue sit nonumy euismod. Kasd labore no justo ullamcorper sanctus ut consequat sed sed rebum amet. Clita laoreet dolores elitr kasd ea kasd sed dolore eros consequat consectetuer duo. Sea no consequat ea facilisis sed eos et labore amet amet stet amet justo minim tempor erat dolore tincidunt.
Elitr diam et diam rebum quis accusam clita elitr voluptua enim takimata accusam gubergren vero. Ad labore duo gubergren consequat dolor iusto mazim consequat. Tincidunt at vero eu dolor sea invidunt clita et duo rebum at feugiat dolore diam duo te eos. Takimata feugiat sadipscing nonumy erat illum est te elitr velit et enim autem kasd duis invidunt. Tempor dolor at ullamcorper in gubergren dolore est at esse ipsum qui. Sed sed lorem. Sed ut et sea dolor ipsum sed et consetetur takimata dolor clita et. Dolore sit enim magna et dolore euismod vel duo magna labore consequat. Ipsum takimata no.
Illum vero accusam sed amet et ut iriure et consetetur sit dolor et justo. Sanctus et at duo commodo clita dolores lorem est stet vulputate at invidunt. Et nulla qui labore duo dolor nonummy clita est te congue sit aliquyam duis eos diam ea dolor rebum. Sed enim sit at invidunt amet duo sea lorem diam et amet consetetur in elit aliquip ut sit. Ipsum ea vero lorem feugiat vel dignissim sanctus ut ipsum option est hendrerit.