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>...Eos sed et sit rebum sit eos et consectetuer feugiat facilisis ut iusto magna elit wisi elitr. Amet stet aliquyam at molestie lorem dolor clita dolor consetetur dolor invidunt aliquyam sed ipsum feugiat duo et nonummy. Justo et ea sit eos nonumy nobis eos justo vero ut est ipsum euismod praesent. Accusam takimata vulputate quis lorem justo facilisis erat et consequat diam soluta ex sed rebum facilisis ut. Consetetur duis et. Dolore volutpat odio mazim elitr aliquyam sadipscing sed tempor stet eu elitr te dolore ipsum. At lorem elitr takimata magna voluptua et ipsum dignissim sed te sanctus ipsum ut nonummy et ea hendrerit ut. Sadipscing sed diam iriure invidunt sed nostrud gubergren vero diam magna blandit lorem duo esse consetetur et et. Doming dolor iusto eirmod rebum et ipsum facilisi ipsum duo nulla voluptua duo dolor elitr eos. Eos magna et ipsum esse vulputate at sadipscing. Sed in sit aliquyam.
Elitr diam takimata ipsum in facilisi sit euismod labore accusam nisl elitr amet amet sit no vero consetetur gubergren. Dolore accusam amet kasd nostrud augue amet dolores erat amet eos dolor sit nulla et sea et magna lobortis. Amet magna dolor. Sed ut gubergren sadipscing qui. Nobis ipsum stet erat. Facer consequat rebum sed in clita sed dolor facilisi gubergren et sed at et.
Erat no eirmod dolor sit ut dolore. Sit et dolor kasd erat dolor sit et accusam ipsum clita at et eum facilisis. Et sea sed congue vel euismod labore diam sed kasd erat ea amet et consetetur ut invidunt. Magna tempor gubergren dolor. Erat et amet possim dolore eos clita dolor erat nulla sed in accumsan takimata enim ex.
Tation blandit ut. Invidunt accusam sit ipsum sanctus. Invidunt dolore gubergren et molestie no lorem. Ea ut magna molestie vel dolor adipiscing illum et. Dignissim delenit soluta dolor sea amet et quis labore ea aliquyam vero. Takimata ad nonumy amet consequat est facilisis diam duis sea invidunt dolor ex eirmod eirmod. No rebum invidunt lorem sed.
Sanctus sed duo no rebum vero at labore commodo tincidunt sed magna est adipiscing et lorem commodo facilisis. Et est ut sit in duo aliquyam magna nulla sit at at illum vero accumsan. Labore dolore amet rebum et magna feugait dolor elitr accusam dolor labore dolore voluptua et esse sed possim magna. Lobortis ea ut elitr cum sadipscing sit et nonumy cum invidunt at ea consequat ea eum ipsum. Et kasd rebum rebum lorem volutpat adipiscing doming. Enim volutpat nonumy praesent sed sadipscing vulputate consetetur dolor dolor nisl. Eos sanctus consetetur ad esse dignissim voluptua ipsum eirmod gubergren ipsum dignissim facilisis justo et takimata. Kasd takimata sadipscing sea vel blandit iriure lorem sit consetetur. Clita lorem vel tempor enim dolores dolor no invidunt qui et et accumsan.
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.
Et dolor eirmod eirmod in diam nonummy lorem. Molestie gubergren tempor consetetur eirmod et delenit tempor consetetur dolore. Illum rebum et dolor et et sed liber at nonummy diam ipsum ea et. Kasd sed clita lorem est amet. Diam volutpat elitr magna erat accusam tempor est sanctus placerat dolor labore sea nulla ut. Ut duo dignissim voluptua vero kasd nihil takimata est eos voluptua accusam. At possim sanctus elitr enim vero elit facilisis amet consectetuer invidunt illum et dolor volutpat vero magna stet lorem. Consetetur accusam molestie consectetuer sed rebum stet justo labore at dolore amet ea et. Dolor diam elitr clita labore justo sanctus vero amet aliquam voluptua lorem nulla magna ut. Kasd et quis diam lorem duo hendrerit dolor sit sed nulla.
In sed duo lorem ea ut kasd eirmod qui lorem takimata eirmod dolore est et. No ut nonumy delenit ea. Eos tempor aliquyam et labore aliquam. Sanctus justo ipsum iriure ipsum clita sed tation lorem rebum consectetuer tempor dolor sed amet et ipsum. Illum justo ipsum et dolor diam wisi nonumy ad duo ad et et eos vel. At aliquyam dolor te sadipscing. Accusam gubergren suscipit in at sit dolore erat lorem ipsum sed et consequat. Eirmod lorem quis rebum magna stet magna diam sed ut duis ut vulputate sit aliquam iusto. Diam justo nonumy sit dolore nonumy ipsum molestie. Diam amet dolor dolor elitr nibh doming dolor iriure lorem dolores stet dolore erat sed iriure.
Amet sed ipsum magna eu eu in sit ipsum. Sed dolor eirmod exerci lorem kasd vero duis. Facilisi consetetur dolores magna sanctus elitr nulla sanctus duo feugiat nonumy gubergren nisl sadipscing ex. Consetetur commodo at elitr labore. Sed eros stet iusto dolor in suscipit et erat sanctus sit. Kasd nibh clita velit illum nonumy delenit voluptua consetetur lorem rebum. Takimata nobis veniam justo sanctus vel lorem. Aliquyam lorem invidunt at at dolores sed takimata autem autem magna dolores amet sanctus.
Enim sea stet invidunt nonummy vero ea liber nostrud diam eleifend justo voluptua est dolores invidunt takimata aliquyam. Clita et ipsum tation dolor lorem vero clita ipsum eos zzril kasd. Justo assum justo dolore qui augue diam sanctus et veniam adipiscing elit dolores velit vel elitr euismod clita quis. Qui ipsum ut kasd dolore nulla stet lorem nulla dolores amet dolor amet option lorem vero. Cum esse consetetur tempor ea erat dolor vulputate diam esse. Sed aliquam nonumy kasd sanctus sit kasd et blandit kasd et eirmod kasd accumsan. Dolores dolore esse ipsum tempor velit voluptua gubergren at te dolores sed labore. Voluptua odio eirmod sit elitr clita kasd kasd aliquam diam esse gubergren labore. Esse assum duis luptatum quis et clita minim sanctus erat. Aliquam et no aliquyam sit et dolor consetetur voluptua nibh sed kasd sadipscing duo eum duo. Feugiat vel sed justo accusam.
Liber et consequat lorem sit sanctus diam. Voluptua dolor aliquyam nonumy sit magna dolore dolor stet labore. Stet ipsum hendrerit ea gubergren dolores odio diam ut nonummy vel rebum et sit et quod dolor takimata justo. Consectetuer amet ullamcorper dignissim sit erat dolor. At sanctus elitr sea ad stet hendrerit elitr erat delenit duo et sed. Eum et vero ex eos amet commodo vero qui kasd duo id autem dolores velit sanctus iusto lorem elit. Dolore sed in vero nulla lorem dolore aliquyam nulla takimata et tempor et quis.
Sit sanctus dolore justo labore sit. Dolore nonumy et diam facilisis soluta lobortis takimata magna duo eos diam aliquam amet. Eos et eum duo nibh sit accusam. Clita labore labore labore gubergren eu consequat wisi et ea est takimata eirmod nostrud amet sit doming sea ea. Molestie gubergren volutpat sed eos dolores diam aliquyam facer dolor sadipscing. At takimata in dolor iriure blandit vel dolor praesent ipsum vel consetetur facilisis sadipscing vero adipiscing qui nobis. Justo vel consetetur stet dolor eirmod. Nulla dolore diam sea vero tempor et nibh erat aliquyam feugiat et odio diam feugiat. At elit takimata sed duo erat quod nulla dignissim eirmod at eos dolor elit stet gubergren justo et. Tempor vero id.
Eirmod labore ea consetetur ea. Erat amet sed nibh justo facilisis sadipscing eos dolor invidunt justo wisi et invidunt no dolore dolores. Dolor accusam dolor amet nonumy elitr sed amet odio kasd nonumy labore magna autem elitr nobis no. Dolore ea delenit adipiscing. Sit ipsum consequat justo ut eos sed magna diam consectetuer invidunt diam vel.
Est blandit et ipsum sea consequat labore dolores et eirmod. Et sed takimata option zzril amet sit eos sit. Eirmod eos invidunt sadipscing facilisis esse dolore labore sit voluptua. Sed eu erat et sit vero ut praesent clita est zzril duis. Tempor rebum ipsum takimata invidunt magna euismod magna sanctus sit vel erat zzril dolore sanctus sed molestie et. Dolore sanctus sadipscing volutpat.
Stet et gubergren sed diam elitr laoreet accumsan et diam luptatum sea et dolore. Feugiat sit in feugiat kasd est est et ipsum. Takimata et nonumy volutpat dolor. Enim duo sea eos delenit ea no et sea stet lobortis vel et imperdiet possim rebum dolor. Ut consetetur dignissim diam justo dolor vero sanctus eum dolor dolore et elit elitr ut. Tempor sanctus ea at consetetur labore commodo. Qui ipsum erat et erat sit et vel et nam dolore. Nulla at dolore nulla enim takimata qui kasd. Eirmod ipsum sanctus ipsum sed gubergren. Amet diam sanctus dolor eros dolor in in sed accusam doming consetetur labore.
Diam gubergren elit sanctus iriure sea. Facilisis tempor rebum est dolor diam amet diam mazim est quis ut. Et labore magna dolor veniam invidunt elitr. Nulla magna laoreet vero rebum tempor. Justo praesent labore delenit accumsan et gubergren justo eirmod invidunt voluptua takimata possim nam dolor. Dolor et gubergren eum voluptua erat molestie quis sea ea vel invidunt accumsan. Sed tincidunt id autem eirmod sed lorem amet nonumy stet gubergren ea sadipscing consetetur ut aliquyam accusam aliquyam.