]> granicus.if.org Git - docbook-dsssl/commitdiff
Support 'draft' watermark
authorNorman Walsh <ndw@nwalsh.com>
Tue, 29 Jan 2002 17:19:10 +0000 (17:19 +0000)
committerNorman Walsh <ndw@nwalsh.com>
Tue, 29 Jan 2002 17:19:10 +0000 (17:19 +0000)
xsl/fo/pagesetup.xsl
xsl/fo/param.ent
xsl/fo/param.xweb
xsl/html/docbook.xsl
xsl/html/param.ent
xsl/html/param.xweb
xsl/images/blank.png [new file with mode: 0644]
xsl/images/draft.png [new file with mode: 0644]
xsl/params/draft.watermark.image.xml [new file with mode: 0644]

index 414ba5e7be61ec5ae9e03cd659e4dabfeeecdf67..aea9c2445d4abfd894484c83f00c7ddb4cc407c0 100644 (file)
                         display-align="after"/>
     </fo:simple-page-master>
 
+    <!-- one sided, single column, draft mode -->
+    <fo:simple-page-master master-name="draft1"
+                           page-width="{$page.width}"
+                           page-height="{$page.height}"
+                           margin-top="{$page.margin.top}"
+                           margin-bottom="{$page.margin.bottom}"
+                           margin-left="{$page.margin.inner}"
+                           margin-right="{$page.margin.outer}">
+      <fo:region-body margin-bottom="{$body.margin.bottom}"
+                      margin-top="{$body.margin.top}">
+        <xsl:if test="$draft.watermark.image != ''">
+          <xsl:attribute name="background-image">
+            <xsl:value-of select="$draft.watermark.image"/>
+          </xsl:attribute>
+          <xsl:attribute name="background-attachment">fixed</xsl:attribute>
+          <xsl:attribute name="background-repeat">no-repeat</xsl:attribute>
+          <xsl:attribute name="background-position-horizontal">center</xsl:attribute>
+          <xsl:attribute name="background-position-vertical">center</xsl:attribute>
+        </xsl:if>
+      </fo:region-body>
+      <fo:region-before extent="{$region.before.extent}"
+                        display-align="after"/>
+      <fo:region-after extent="{$region.after.extent}"
+                        display-align="after"/>
+    </fo:simple-page-master>
+
     <!-- for left-hand/even pages in twosided mode, single column -->
     <fo:simple-page-master master-name="left1"
                            page-width="{$page.width}"
       </fo:repeatable-page-master-alternatives>
     </fo:page-sequence-master>
 
+    <!-- setup for single-sided, 1 column -->
+    <fo:page-sequence-master master-name="onesidedraft1">
+      <fo:repeatable-page-master-alternatives>
+        <fo:conditional-page-master-reference master-reference="draft1"/>
+      </fo:repeatable-page-master-alternatives>
+    </fo:page-sequence-master>
+
     <!-- setup for double-sided, 1 column -->
     <fo:page-sequence-master master-name="twoside1">
       <fo:repeatable-page-master-alternatives>
 <xsl:template name="select.singlesided.pagemaster">
   <xsl:param name="element" select="local-name(.)"/>
   <xsl:choose>
+    <xsl:when test="ancestor-or-self::*[@status][1]/@status = 'draft'">
+      <xsl:text>onesidedraft1</xsl:text>
+    </xsl:when>
     <xsl:when test="$element='set' or $element='book' or $element='part'">
       <xsl:text>titlepage1</xsl:text>
     </xsl:when>
index 69e870864c71d77068c258d7ccda4d9fe189e654..e576da96b65a9d670e8edcefa8841b88d25ad881 100644 (file)
@@ -33,6 +33,7 @@
 <!ENTITY default.units SYSTEM "../params/default.units.xml">
 <!ENTITY dingbat.font.family SYSTEM "../params/dingbat.font.family.xml">
 <!ENTITY double.sided SYSTEM "../params/double.sided.xml">
+<!ENTITY draft.watermark.image SYSTEM "../params/draft.watermark.image.xml">
 <!ENTITY firstterm.only.link SYSTEM "../params/firstterm.only.link.xml">
 <!ENTITY footnote.font.size SYSTEM "../params/footnote.font.size.xml">
 <!ENTITY fop.extensions SYSTEM "../params/fop.extensions.xml">
index 0900f64c29ed0801a5cbca48874a5bde3eda9fd2..ada206ba328ceee116caaf959dfe4c910339452f 100644 (file)
@@ -290,6 +290,7 @@ zero by default, so this is simply the page-master region-left.
 &body.font.size;
 &footnote.font.size;
 &title.margin.left;
+&draft.watermark.image;
 </reference>
 
 <reference><title>Font Families</title>
@@ -380,6 +381,7 @@ around all these parameters.</para>
 <src:fragref linkend="default.units.frag"/>
 <src:fragref linkend="dingbat.font.family.frag"/>
 <src:fragref linkend="double.sided.frag"/>
+<src:fragref linkend="draft.watermark.image.frag"/>
 <src:fragref linkend="firstterm.only.link.frag"/>
 <src:fragref linkend="footnote.font.size.frag"/>
 <src:fragref linkend="fop.extensions.frag"/>
index 7e9900818bf1601a07df1e4d611a7193bf340521..d5baba76ccbf0292074c5d83d4a033065848a73e 100644 (file)
 
   <meta name="generator" content="DocBook XSL Stylesheets V{$VERSION}"/>
 
+  <xsl:if test="ancestor-or-self::*[@status][1]/@status = 'draft'
+                and $draft.watermark.image != ''">
+    <style type="text/css"><xsl:text>
+body { background-image: url("</xsl:text>
+<xsl:value-of select="$draft.watermark.image"/><xsl:text>");
+       background-attachment: fixed;
+       background-repeat: no-repeat;
+       background-position: center center;
+</xsl:text>
+    </style>
+  </xsl:if>
+
   <xsl:apply-templates select="." mode="head.keywords.content"/>
 </xsl:template>
 
index 4adf04ea05fc4ad33e38b71b37ea849424c22b11..99945a8d8990eb039cbf65695b0b2e56d1a3071f 100644 (file)
@@ -28,6 +28,7 @@
 <!ENTITY css.decoration SYSTEM "../params/css.decoration.xml">
 <!ENTITY default.encoding SYSTEM "../params/default.encoding.xml">
 <!ENTITY default.table.width SYSTEM "../params/default.table.width.xml">
+<!ENTITY draft.watermark.image SYSTEM "../params/draft.watermark.image.xml">
 <!ENTITY ebnf.table.bgcolor SYSTEM "../params/ebnf.table.bgcolor.xml">
 <!ENTITY ebnf.table.border SYSTEM "../params/ebnf.table.border.xml">
 <!ENTITY emphasis.propagates.style SYSTEM "../params/emphasis.propagates.style.xml">
index 5a38468862ef1015fc2cbdc27145b81c84c47274..defc5d1cf245a59f2829e22f27b62f2fb1563607 100644 (file)
@@ -150,6 +150,7 @@ to be incomplete. Don't forget to read the source, too :-)</para>
 &html.longdesc.link;
 &make.valid.html;
 &html.cleanup;
+&draft.watermark.image;
 </reference>
 
 <reference><title>XSLT Processing</title>
@@ -313,6 +314,7 @@ around all these parameters.</para>
 <src:fragref linkend="css.decoration.frag"/>
 <src:fragref linkend="default.encoding.frag"/>
 <src:fragref linkend="default.table.width.frag"/>
+<src:fragref linkend="draft.watermark.image.frag"/>
 <src:fragref linkend="ebnf.table.bgcolor.frag"/>
 <src:fragref linkend="ebnf.table.border.frag"/>
 <src:fragref linkend="emphasis.propagates.style.frag"/>
diff --git a/xsl/images/blank.png b/xsl/images/blank.png
new file mode 100644 (file)
index 0000000..764bf4f
Binary files /dev/null and b/xsl/images/blank.png differ
diff --git a/xsl/images/draft.png b/xsl/images/draft.png
new file mode 100644 (file)
index 0000000..26ebaae
Binary files /dev/null and b/xsl/images/draft.png differ
diff --git a/xsl/params/draft.watermark.image.xml b/xsl/params/draft.watermark.image.xml
new file mode 100644 (file)
index 0000000..1f5aa89
--- /dev/null
@@ -0,0 +1,22 @@
+<refentry id="draft.watermark.image">
+<refmeta>
+<refentrytitle>draft.watermark.image</refentrytitle>
+<refmiscinfo role="type">uri</refmiscinfo>
+</refmeta>
+<refnamediv>
+<refname>draft.watermark.image</refname>
+<refpurpose>The URI of the image to be used for draft watermarks</refpurpose>
+</refnamediv>
+
+<refsynopsisdiv>
+<src:fragment id='draft.watermark.image.frag'>
+<xsl:param name="draft.watermark.image" select="'http://docbook.sourceforge.net/release/images/draft.png'"/>
+</src:fragment>
+</refsynopsisdiv>
+
+<refsect1><title>Description</title>
+
+<para>The image to be used for draft watermarks.</para>
+
+</refsect1>
+</refentry>