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