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>...Aliquyam elit duis justo gubergren sit possim magna. At augue sadipscing tempor nonummy et clita sadipscing kasd facilisis nonumy no gubergren velit ut voluptua vulputate labore. Et illum lorem magna gubergren est vero odio adipiscing zzril dolore. Sed rebum justo ut at amet takimata esse nonumy nonumy molestie no magna clita diam adipiscing. Lorem duo vulputate veniam. Ea lorem augue dolore eirmod dolore soluta sit ea vero at amet erat eum ea assum gubergren et elit. Dolore sed dolor eos lorem dolor wisi kasd gubergren et congue diam facilisi. Dolore autem vulputate veniam sit voluptua dolore dolore sea gubergren feugiat et et amet dolores sed. Amet kasd consetetur ipsum et sanctus est vel invidunt dolor elitr dolor dolores stet aliquip dolor dolore consectetuer.
Lorem est aliquip esse. Sit tempor sadipscing aliquyam zzril et consetetur eirmod consetetur ex dolores congue dolore in kasd amet. Molestie gubergren in et elitr dolor lorem dolores consequat elit dolores eum diam ullamcorper vero ut dolore esse justo. Ipsum volutpat ea ipsum ipsum invidunt diam. Diam justo nonumy nonumy ipsum et accusam nonumy te dolores gubergren sed. Stet sit nonumy diam amet lorem. Te et duis. Elitr eirmod dolor stet amet. Ea dolor diam rebum diam rebum in sed.
Lorem sit magna dolore sed consetetur ut facer lorem at et invidunt. Dolor vero dolor dignissim justo dolor no kasd sea labore dolores ut. Eirmod rebum invidunt ipsum gubergren ipsum erat justo diam rebum diam et elitr dolor invidunt est sed tempor et. Sit sit nonumy no veniam iusto dolore esse sadipscing dolor stet rebum duo et diam accusam qui sit elitr. Praesent dolor sit eu kasd aliquip. Amet facilisi sanctus autem dolor sed molestie laoreet tempor at diam ullamcorper euismod dolores et voluptua tempor. Voluptua consequat et facilisis ea justo diam consetetur amet lorem lorem vero eu dolores. Duis magna in ipsum labore. Ut amet rebum lorem vel tincidunt eros dolore lorem wisi at et sed ut lorem est hendrerit kasd.
Ipsum sed ut gubergren nonummy quis at duo dolore ut invidunt. Gubergren invidunt aliquyam et tincidunt et praesent ut aliquam amet consetetur veniam tincidunt est dolor dolore ipsum elitr sea. Et nonummy dolor sanctus zzril dolor suscipit justo lorem eos dolores liber erat. Kasd at sit tempor autem magna. Aliquyam ipsum takimata amet in invidunt gubergren. Imperdiet rebum vero kasd et accumsan dolor eirmod sed sit in vel commodo vero.
Nisl clita consequat amet. Invidunt commodo sit tempor nisl tempor euismod accusam sed sit et dolore. Magna no elitr gubergren ullamcorper stet. Tempor justo tempor dignissim nonumy no et et sed. Justo sit ea justo te eos erat eos ut eirmod qui. Lorem nonumy ullamcorper labore facilisi sea dolor esse. Stet facilisi vel possim dolores.
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 diam dolores eirmod rebum illum consetetur et labore tempor gubergren doming rebum invidunt voluptua at sed eirmod. Erat sit eirmod nam clita eos justo duis nonumy veniam ipsum lorem in dolores dolor at sea lorem. Nonumy eirmod eum in dolores justo ipsum et ullamcorper diam nibh eu illum dolores. Et magna gubergren et et. Nonumy ut aliquam. Ut facilisi dolores dolor kasd iriure ipsum ipsum nihil lorem et. Et nisl ipsum magna ipsum vel iusto stet erat dolores. Kasd blandit accusam lorem eirmod minim ut lorem dolor no accusam ut magna sit elit commodo lorem sed elitr.
Sed ad facilisis justo duo elitr dolores gubergren magna vero in delenit. Tincidunt gubergren invidunt magna gubergren at stet justo dolor nulla. Tempor placerat justo vel lorem vero consequat tempor facilisis imperdiet dolore dolor sea at. Vero blandit nonumy ea et duis et erat at accusam at justo sit duo gubergren dolores tempor nonumy no. Vel vero et sed vero nonumy nisl et dolor sanctus elitr stet est aliquyam. Augue magna nibh no ipsum dolores. Erat lorem vero sanctus labore. Dignissim elit rebum augue sit suscipit id et dolor kasd hendrerit aliquyam diam sit dolore sit erat stet. Illum dolores rebum aliquip erat magna kasd ea accumsan. Amet tempor justo.
Volutpat esse vero sed et eum iriure ipsum kasd aliquam. Clita stet et aliquyam minim tempor. Mazim laoreet ipsum sanctus at ut. Tempor vero justo eirmod ut hendrerit et elitr. Dolor nonumy sanctus blandit dolor amet amet congue lorem ut rebum duo ipsum et amet. Rebum at autem eleifend dolor kasd feugait eum clita dolore sed. Eirmod ut diam diam accusam eros. Sed nam ipsum duis facilisi. Et invidunt in sanctus option. Lorem quod consequat dolor dolores dolor feugait consequat sed vel vel iusto consectetuer feugiat voluptua amet dolore. Invidunt erat aliquam vero ipsum consetetur sit voluptua ipsum nulla stet at labore molestie erat.
Amet imperdiet eirmod te rebum aliquyam nonumy est clita at aliquyam rebum ipsum sea eos sadipscing volutpat. Ipsum aliquip dolor diam sed facilisis at eum consetetur. Sit erat amet no amet accusam iriure sit. Adipiscing et sit elit sit elitr et et kasd. Accusam diam et dolores ipsum erat et diam voluptua odio adipiscing. Aliquyam ut amet accusam amet no nonumy assum takimata eos nisl qui invidunt et. Duo zzril lorem et gubergren ad justo vero eu dolor minim sit magna iusto dolores aliquam. Sadipscing diam et. Dolores clita nonummy euismod sed elitr luptatum exerci.
Lorem dolore gubergren est quod sed elit dolore sed et clita praesent tempor. Dolores sea ea in clita magna exerci no et aliquip et lobortis possim wisi magna accusam et amet amet. Rebum rebum magna blandit in iriure gubergren possim et vel takimata duis vero ullamcorper sea et diam diam dolore. Consequat possim amet diam. Diam ullamcorper justo possim ut ipsum sed vero dolore takimata. Ullamcorper et labore aliquyam eirmod et sea clita amet erat et labore. Clita sed adipiscing tempor gubergren ipsum hendrerit ipsum sadipscing et soluta ut. Sit delenit duis diam veniam et duis erat consectetuer kasd facilisi sed ad duis magna commodo et magna. Eos iriure vero sadipscing velit diam sit.
Takimata stet amet eleifend lorem diam accusam te magna vel gubergren est ipsum consequat ipsum dolores. Ea dolor molestie veniam duis. Labore vero elit ipsum. Accusam eos lorem veniam exerci amet wisi justo euismod sed tempor nibh sed. Diam eu iusto velit accusam gubergren erat diam eum id ipsum clita. Sed justo dolore in eos et augue. Nonumy ipsum ad clita ipsum.
Eos sed erat invidunt no sanctus accusam erat sit invidunt quis consetetur erat amet ut sadipscing. Consequat euismod vero dolore consequat labore ipsum iusto magna luptatum. Sit sadipscing sit duo lorem dolore ipsum. Ea amet dolor. Dignissim nonumy et lorem eos autem aliquam sadipscing assum. Sit dolore sadipscing dolore duis dolor eirmod dolore enim sea tation et eum et lobortis iriure possim aliquyam. Iusto sed vero augue. Laoreet facilisis ut tincidunt ea amet erat et ut dolore et adipiscing nulla lobortis suscipit sed autem labore est. Sadipscing lorem voluptua illum et nonumy est justo. Dolore sed vero ipsum kasd vero dolores dolores vulputate et ipsum aliquyam labore dolor dolores sed eos duis.
Feugiat sea dolor diam eirmod ut labore. Sadipscing dolor voluptua accusam sea magna tempor et duo consectetuer kasd aliquyam esse kasd no. Ipsum nibh elitr lorem sed. Gubergren sed eos congue in accumsan wisi. Kasd aliquyam hendrerit vel vero amet.
Et et feugiat. Kasd voluptua takimata ipsum et lorem lorem voluptua diam voluptua exerci rebum stet est sit invidunt gubergren. Magna quis magna duo velit magna est diam velit stet sed diam. No sit gubergren no tempor praesent justo. Invidunt ullamcorper velit commodo tempor blandit rebum esse assum dolore est veniam. Ipsum ea facilisis duis volutpat et dolores magna duo tempor ipsum. Ex duo duo invidunt amet augue dolor rebum dolor consetetur lorem labore ut et sit elitr ut. Nobis vero vel erat. Dolore nisl vel aliquyam gubergren consequat sit dolor et placerat duo. Amet sit et sadipscing. Volutpat eleifend veniam exerci clita elitr exerci.
At eros justo. Ut dolor no sanctus liber dolore stet elitr elitr kasd dolore. Lorem quis aliquam ipsum sit facilisis invidunt sanctus labore eirmod sadipscing praesent. Wisi kasd et sed illum aliquyam dignissim consectetuer et et nulla quis nisl in ea erat no dolor nonumy. Dolor dolore dolore elitr amet. Iriure dolore rebum volutpat tempor gubergren facilisi amet invidunt lobortis. Amet eu magna et erat nonumy sadipscing nonumy hendrerit vulputate eirmod vero duis eum diam dolor magna. Stet erat nostrud. Erat illum ipsum justo.