Dokumentation mit DocBook
Posts 1-2 of 2
-
Klaus Ebner Premium Member Group moderatorThe company name is only visible to registered members.Änderungsmarkierungen in PDF
Die Standard DocBook Distribution liefert Möglichkeiten, Änderungen im XML Dokument bei der Erstellung von (X)HTML anzuzeigen. Dabei wird das Attribut "revisionflag" benutzt, welches belegt werden kann mit
- changed
- deleted
- added
Leider exisitieren standardmäßig keine Style-Sheets für die Darstellung von geänderten Inhalten in PDF Dokumenten.
Folgendes Style-Sheet erlaubt die Darstellung eines senkrechten Striches am rechten Seitenrand, wenn das revisionflag gesetzt wird. In dieser Version wird zwischen den Flags nicht unterschieden. Insbesondere ist damit die Darstellung von gelöschten Inhalten nicht möglich. Aber es ist ein Anfang... Verbesserungen werden gerne gesehen :-)
<?xml version="1.0" encoding="US-ASCII"?>
<!--This file was created automatically by html2xhtml-->
<!--from the HTML stylesheets. Do not edit this file.-->
<xsl:stylesheet xmlns:xsl="
http://www.w3.org/1999/XSL/Transform"
xmlns:fo="
http://www.w3.org/1999/XSL/Format"
version="1.0">
<!-- Das ist das Style-Sheet der DPAG für die Erstellung von FO Dateien. In anderen Umgebungen muss es
durch ein entsprechendes ersetzt werden (z.B. docbook.xsl). Die Angabe dpag:// wird durch ein catalog-File aufgelöst -->
<xsl:import href="dpag://fo/DPAG_wide.xsl"/>
<xsl:param name="show.revisionflag" select="'1'"/>
<xsl:template match="*[@revisionflag]">
<xsl:choose>
<xsl:when test="local-name(.) = 'para' or local-name(.) = 'simpara' or local-name(.) = 'formalpara' or local-name(.) = 'section' or local-name(.) = 'sect1' or local-name(.) = 'sect2' or local-name(.) = 'sect3' or local-name(.) = 'sect4' or local-name(.) = 'sect5' or local-name(.) = 'chapter' or local-name(.) = 'preface' or local-name(.) = 'itemizedlist' or local-name(.) = 'varlistentry' or local-name(.) = 'glossary' or local-name(.) = 'bibliography' or local-name(.) = 'index' or local-name(.) = 'appendix'">
<fo:block border-end-color="black"
border-end-style="solid"
border-end-width="0.5pt"
padding-end="3pt">
<xsl:apply-imports/>
</fo:block>
</xsl:when>
<xsl:when test="local-name(.) = 'phrase' or local-name(.) = 'ulink' or local-name(.) = 'link' or local-name(.) = 'filename' or local-name(.) = 'literal' or local-name(.) = 'member' or local-name(.) = 'glossterm' or local-name(.) = 'sgmltag' or local-name(.) = 'quote' or local-name(.) = 'emphasis' or local-name(.) = 'command' or local-name(.) = 'xref'">
<fo:block border-end-color="black"
border-end-style="solid"
border-end-width="0.5pt"
padding-end="3pt">
<xsl:apply-imports/>
</fo:block>
</xsl:when>
<xsl:when test="local-name(.) = 'listitem' or local-name(.) = 'entry' or local-name(.) = 'title'">
<!-- nop; these are handled directly in the stylesheet -->
<xsl:apply-imports/>
</xsl:when>
<xsl:otherwise>
<xsl:message>
<xsl:text>Revisionflag on unexpected element: </xsl:text>
<xsl:value-of select="local-name(.)"/>
<xsl:text> (Assuming block)</xsl:text>
</xsl:message>
<xsl:apply-imports/>
</xsl:otherwise>
</xsl:choose>
</xsl:template>
</xsl:stylesheet>
Die Anwendung ist recht einfach: Bei dem Umwandeln von DocBook-XML zu FO-XML wird dieses als Stylesheet statt docbook.xsl aufgerufen.
- 21 Dec 2004, 08:06 am
-
Gunter Matella Premium MemberThe company name is only visible to registered members.Re: Änderungsmarkierungen in PDF
Hallo Herr Ebner,
als Neuling in der DocBook-Anwendung bin ich mit Interesse auf Ihren Beitrag gestossen. Ich verwende aktuell das du1-Packet zum Erzeugen der PDFs.
Ich habe Ihr Stylesheet wie beschrieben eingebunden, sehe aber im PDF kein Effekt. Könnten Sie mir ein kurzes Anwendungsbeispiel (XML) des 'revisionflag' Property geben?
Mit freundlichen Grüßen,
Gunter Matella
- 09 Oct 2006, 12:04 pm
