Commit 55f1fd79 authored by Anne Goloubkoff-Duponchel's avatar Anne Goloubkoff-Duponchel
Browse files

xsl pour les pdf tei et ead

parent 148f9b52
......@@ -31,7 +31,7 @@
<!-- équivalent du head html -->
<fo:layout-master-set>
<!-- Les gabarits de page. Au moins 1 simple-page-master obligatoire-->
<fo:simple-page-master master-name="couverture" margin-top="40mm" margin-bottom="5mm" margin-left="20mm" margin-right="40mm">
<fo:simple-page-master master-name="couverture" margin-top="40mm" margin-bottom="20mm" margin-left="20mm" margin-right="40mm">
<fo:region-body margin-bottom="20mm" margin-top="20mm"/>
<fo:region-after extent="10mm" region-name="pied-couverture"/>
</fo:simple-page-master>
......@@ -67,8 +67,7 @@
<fo:page-sequence master-reference="couverture">
<fo:static-content flow-name="pied-couverture">
<fo:block text-align="left" font-size="8pt" space-after="6pt">
<xsl:value-of select="../ead:eadheader/ead:filedesc/ead:publicationstmt/ead:publisher"/>
<xsl:text></xsl:text>
<xsl:text>Pôle Document numérique – MRSH – université de Caen Normandie – </xsl:text>
<xsl:value-of select="format-dateTime(current-dateTime(),'[D,2]/[M,2]/[Y]')" />
</fo:block>
</fo:static-content>
......@@ -178,76 +177,80 @@
</xsl:template>
<!-- DID -->
<xsl:template match="ead:did">
<fo:block xsl:use-attribute-sets="table-and-caption">
<fo:table xsl:use-attribute-sets="table">
<fo:table-column column-width="120px"/>
<fo:table-column />
<fo:table-body>
<xsl:apply-templates/>
</fo:table-body>
</fo:table>
<xsl:template match="ead:c/ead:did">
<fo:block xsl:use-attribute-sets="infoParent">
<xsl:apply-templates/>
</fo:block>
</xsl:template>
<xsl:template match="ead:unitid | ead:unittitle | ead:language | ead:unitdate | ead:physdesc | ead:origination | ead:physloc | ead:repository | ead:materialspec">
<fo:table-row>
<fo:table-cell xsl:use-attribute-sets="cell">
<fo:block xsl:use-attribute-sets="label">
<xsl:choose>
<xsl:when test="@label">
<xsl:value-of select="@label"/>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="self::ead:unitid">
<xsl:text>Cote(s)</xsl:text>
</xsl:when>
<xsl:when test="self::ead:unittitle">
<xsl:text>Intitulé</xsl:text>
</xsl:when>
<xsl:when test="self::ead:unitdate">
<xsl:text>Datation</xsl:text>
</xsl:when>
<xsl:when test="self::ead:physdesc">
<xsl:text>Description matérielle</xsl:text>
</xsl:when>
<xsl:when test="self::ead:language">
<xsl:text>Langue(s)</xsl:text>
</xsl:when>
<xsl:when test="self::ead:origination">
<xsl:text>Origine</xsl:text>
</xsl:when>
<xsl:when test="self::ead:physloc">
<xsl:text>Localisation physique</xsl:text>
</xsl:when>
<xsl:when test="self::ead:repository">
<xsl:text>Organisme responsable de l’accès intellectuel</xsl:text>
</xsl:when>
<xsl:when test="self::ead:materialspec">
<xsl:text>Particularités de certains types de documents</xsl:text>
</xsl:when>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</fo:block>
</fo:table-cell>
<fo:table-cell xsl:use-attribute-sets="cell">
<fo:block xsl:use-attribute-sets="content">
<xsl:apply-templates/>
</fo:block>
</fo:table-cell>
</fo:table-row>
<xsl:template match="ead:c/ead:c/ead:did">
<fo:block xsl:use-attribute-sets="infoEnfants">
<xsl:apply-templates/>
</fo:block>
</xsl:template>
<xsl:template match="ead:unitid | ead:unittitle | ead:language | ead:unitdate | ead:origination | ead:physloc | ead:repository | ead:materialspec">
<fo:block xsl:use-attribute-sets="divDid">
<fo:inline xsl:use-attribute-sets="label">
<xsl:choose>
<xsl:when test="@label">
<xsl:value-of select="@label"/>
<xsl:text> : </xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="self::ead:unitid">
<xsl:text>Cote(s) : </xsl:text>
</xsl:when>
<xsl:when test="self::ead:unittitle">
<xsl:text>Intitulé</xsl:text>
</xsl:when>
<xsl:when test="self::ead:unitdate">
<xsl:text>Datation : </xsl:text>
</xsl:when>
<xsl:when test="self::ead:physdesc">
<xsl:text>Description matérielle : </xsl:text>
</xsl:when>
<xsl:when test="self::ead:language">
<xsl:text>Langue(s) : </xsl:text>
</xsl:when>
<xsl:when test="self::ead:origination">
<xsl:text>Origine : </xsl:text>
</xsl:when>
<xsl:when test="self::ead:physloc">
<xsl:text>Localisation physique : </xsl:text>
</xsl:when>
<xsl:when test="self::ead:repository">
<xsl:text>Organisme responsable de l’accès intellectuel : </xsl:text>
</xsl:when>
<xsl:when test="self::ead:materialspec">
<xsl:text>Particularités de certains types de documents : </xsl:text>
</xsl:when>
</xsl:choose>
</xsl:otherwise>
</xsl:choose>
</fo:inline>
<fo:inline xsl:use-attribute-sets="content">
<xsl:apply-templates/>
</fo:inline>
</fo:block>
</xsl:template>
<xsl:template match="ead:dimensions | ead:extent | ead:physfacet | ead:address">
<fo:block>
<fo:block xsl:use-attribute-sets="divDid">
<fo:inline xsl:use-attribute-sets="label">
<xsl:choose>
<xsl:when test="@label">
<xsl:value-of select="@label"/>
<xsl:text> : </xsl:text>
</xsl:when>
<xsl:when test="@type">
<xsl:value-of select="@type"/>
<xsl:text> : </xsl:text>
</xsl:when>
<xsl:otherwise>
<xsl:choose>
<xsl:when test="self::ead:dimensions">
......@@ -289,7 +292,7 @@
</xsl:if>
</xsl:template>
<xsl:template match="ead:accessrestrict | ead:accruals | ead:acqinfo | ead:altformavail | ead:appraisal | ead:arrangement | ead:bibliography | ead:bioghist | ead:controlaccess | ead:custodhist | ead:odd | ead:originalsloc | ead:otherfindaid | ead:phystech | ead:prefercite | ead:processinfo | ead:relatedmaterial | ead:scopecontent | ead:separatedmaterial | ead:userestrict | ead:c/ead:daogroup">
<xsl:template match="ead:accessrestrict | ead:accruals | ead:acqinfo | ead:altformavail | ead:appraisal | ead:arrangement | ead:bibliography | ead:bioghist | ead:controlaccess | ead:custodhist | ead:odd | ead:originalsloc | ead:otherfindaid | ead:phystech | ead:prefercite | ead:processinfo | ead:relatedmaterial | ead:scopecontent | ead:separatedmaterial | ead:userestrict">
<fo:block xsl:use-attribute-sets="div">
<xsl:choose>
<xsl:when test="ead:head">
......@@ -435,8 +438,6 @@
</fo:list-item>
</xsl:template>
<xsl:template match="ead:list/ead:head" mode="titre_liste">
<xsl:apply-templates select="node()"/>
</xsl:template>
......@@ -469,10 +470,39 @@
<!-- Les images -->
<xsl:template match="ead:dao">
<xsl:template match="ead:daogrp[1]">
<fo:inline xsl:use-attribute-sets="label">
Document(s) iconographique(s)
</fo:inline>
<fo:block>
<xsl:apply-templates/>
</fo:block>
</xsl:template>
<xsl:template match="ead:daodesc">
<fo:inline xsl:use-attribute-sets="label">
<xsl:apply-templates/>
</fo:inline>
</xsl:template>
<xsl:template match="ead:daoloc">
<fo:inline xsl:use-attribute-sets="content">
[Image] <external-graphic src="{@*:href}" width="50%"/>
<xsl:apply-templates/>
</fo:inline>
</xsl:template>
<xsl:template match="ead:dao">
<fo:inline xsl:use-attribute-sets="label">
FFDocument(s) iconographique(s) :
</fo:inline>
<fo:block xsl:use-attribute-sets="content">
[Image] <external-graphic src="url('file:/Users/anne/Documents/MaXStandaloneV2/maxTemplatesPDDN/templates-editions/max_ead_demo/ui/images/nummus/medaillier/DSCN7998.jpg')" width="5%"/>
<xsl:apply-templates/>
</fo:block>
</xsl:template>
</xsl:stylesheet>
......@@ -42,8 +42,15 @@
<xsl:attribute name="page-break-after">always</xsl:attribute>
</xsl:attribute-set>
<xsl:attribute-set name="table-and-caption">
<xsl:attribute name="border"></xsl:attribute>
<xsl:attribute-set name="infoParent">
<!-- <xsl:attribute name="border">1px solid red</xsl:attribute> -->
<!-- <xsl:attribute name="margin-bottom">10pt</xsl:attribute> -->
<xsl:attribute name="background-color">#EEEEEE</xsl:attribute>
</xsl:attribute-set>
<xsl:attribute-set name="infoEnfants">
<!-- <xsl:attribute name="border">1px solid black</xsl:attribute> -->
<xsl:attribute name="background-color">#EEEEEE</xsl:attribute>
</xsl:attribute-set>
<xsl:attribute-set name="table">
......@@ -52,18 +59,22 @@
<xsl:attribute-set name="cell">
<xsl:attribute name="font-size">9pt</xsl:attribute>
<xsl:attribute name="text-align">left</xsl:attribute>
<xsl:attribute name="padding">3pt</xsl:attribute>
<xsl:attribute name="border">solid 1pt #fff</xsl:attribute>
<xsl:attribute name="padding">10pt</xsl:attribute>
<xsl:attribute name="border">1pt solid green</xsl:attribute>
</xsl:attribute-set>
<xsl:attribute-set name="label">
<xsl:attribute name="padding-left">10pt</xsl:attribute>
<xsl:attribute name="margin-top">3pt</xsl:attribute>
<xsl:attribute name="font-size">9pt</xsl:attribute>
<xsl:attribute name="font-family">serif</xsl:attribute>
<xsl:attribute name="line-height">1.3</xsl:attribute>
<!-- <xsl:attribute name="color">pink</xsl:attribute> -->
</xsl:attribute-set>
<xsl:attribute-set name="content">
<xsl:attribute name="margin-top">3pt</xsl:attribute>
<xsl:attribute name="font-size">9pt</xsl:attribute>
<xsl:attribute name="font-family">serif</xsl:attribute>
<xsl:attribute name="line-height">1.3</xsl:attribute>
</xsl:attribute-set>
......@@ -77,9 +88,19 @@
<xsl:attribute name="text-align">justify</xsl:attribute>
<xsl:attribute name="margin-top">5pt</xsl:attribute>
<xsl:attribute name="margin-bottom">5pt</xsl:attribute>
<xsl:attribute name="padding">5pt</xsl:attribute>
<xsl:attribute name="padding-bottom">5pt</xsl:attribute>
<!-- <xsl:attribute name="border">solid 1pt red</xsl:attribute> -->
</xsl:attribute-set>
<xsl:attribute-set name="divDid">
<xsl:attribute name="font-size">10pt</xsl:attribute>
<xsl:attribute name="text-align">justify</xsl:attribute>
<xsl:attribute name="padding">5pt</xsl:attribute>
<xsl:attribute name="padding-bottom">5pt</xsl:attribute>
</xsl:attribute-set>
<xsl:attribute-set name="para">
<xsl:attribute name="font-size">9pt</xsl:attribute>
<xsl:attribute name="font-family">serif</xsl:attribute>
......
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:xhtml="http://www.w3.org/1999/xhtml"
xmlns="http://www.w3.org/1999/XSL/Format"
xmlns:ead="urn:isbn:1-931666-22-9"
xmlns:i18n="http://apache.org/cocoon/i18n/2.1" exclude-result-prefixes="xsl xhtml">
<!-- Le template de l'en-tête -->
<xsl:template name="pied-couverture">
<block>
<table>
<table-body>
<table-row>
<table-cell>
<block text-align="left" font-family="Times" font-size="7pt">
Pôle Document numérique – MRSH – université de Caen Normandie
<xsl:text></xsl:text>
<xsl:value-of select="format-dateTime(current-dateTime(),'[D,2]/[M,2]/[Y]')" />
</block>
</table-cell>
<table-cell>
<block text-align="right" font-family="Times" font-size="8pt">
<xsl:text>Page </xsl:text>
<page-number/>
<xsl:text> / </xsl:text>
<page-number-citation ref-id="last-page"/>
</block>
</table-cell>
</table-row>
</table-body>
</table>
</block>
</xsl:template>
<xsl:template name="pied-impaire">
<block>
<table>
<table-body>
<table-row>
<table-cell>
<block text-align="left" font-family="Times" font-size="7pt">
<xsl:value-of select="$idProject" />
<xsl:text></xsl:text>
<xsl:value-of select="format-dateTime(current-dateTime(),'[D,2]/[M,2]/[Y]')" />
</block>
</table-cell>
<table-cell>
<block text-align="right" font-family="Times" font-size="8pt">
<xsl:text>Page </xsl:text>
<page-number/>
<xsl:text> / </xsl:text>
<page-number-citation ref-id="last-page"/>
</block>
</table-cell>
</table-row>
</table-body>
</table>
</block>
</xsl:template>
<xsl:template name="pied-paire">
<table>
<table-body>
<table-row>
<table-cell>
<block text-align="left" font-family="Times" font-size="8pt">
<!-- <page-number/> -->
<xsl:text>Page </xsl:text>
<page-number/>
<xsl:text> / </xsl:text>
<page-number-citation ref-id="last-page"/>
</block>
</table-cell>
<table-cell>
<block text-align="right" font-family="Times" font-size="7pt">
<xsl:value-of select="$idProject" />
<xsl:text></xsl:text>
<xsl:value-of select="format-dateTime(current-dateTime(),'[D,2]/[M,2]/[Y]')" />
</block>
</table-cell>
</table-row>
</table-body>
</table>
</xsl:template>
</xsl:stylesheet>
\ No newline at end of file
......@@ -204,7 +204,7 @@
<xsl:attribute name="padding-top">5pt</xsl:attribute>
<xsl:attribute name="font-size">7pt</xsl:attribute>
<xsl:attribute name="baseline-shift">5pt</xsl:attribute>
<xsl:attribute name="text-align">justify</xsl:attribute>
<xsl:attribute name="text-align">right</xsl:attribute>
</xsl:attribute-set>
<xsl:attribute-set name="p_notes">
......
......@@ -9,6 +9,9 @@
<!-- Chargement des styles -->
<xsl:import href="styles/styles-fo.xsl"/>
<!-- Le pied de page est dans un fichier à part -->
<xsl:import href="footerfo.xsl"/>
<xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:param name="prettyName"/>
<xsl:param name="idProject"/>
......@@ -27,15 +30,14 @@
<fo:layout-master-set>
<!-- Les gabarits de page. Au moins 1 simple-page-master obligatoire-->
<fo:simple-page-master master-name="couverture" margin-top="10mm" margin-bottom="5mm" margin-left="20mm" margin-right="25mm">
<fo:region-body margin-bottom="10mm" margin-top="10mm"/>
<fo:region-before extent="10mm" region-name="entete-couverture"/>
<fo:region-body margin-bottom="20mm" margin-top="10mm"/>
<!-- <fo:region-before extent="10mm" region-name="entete-couverture"/> -->
<fo:region-after extent="10mm" region-name="pied-couverture"/>
</fo:simple-page-master>
<fo:simple-page-master master-name="premiere" margin-top="10mm" margin-bottom="10mm" margin-left="25mm" margin-right="25mm">
<fo:region-body margin-bottom="50mm" margin-top="50mm"/>
<fo:region-after extent="2mm" region-name="pied-premiere"/>
<fo:region-after extent="1cm" region-name="pied-premiere"/>
</fo:simple-page-master>
<fo:simple-page-master master-name="impaire" margin-top="10mm" margin-bottom="5mm" margin-left="25mm" margin-right="25mm">
......@@ -61,17 +63,16 @@
</fo:layout-master-set>
<!-- La première page contenant les métadonnées du eadheader, la séquence de page utilise le modèle "couverture" décrit plus haut -->
<fo:page-sequence master-reference="couverture">
<fo:static-content flow-name="entete-couverture">
<fo:block text-align="left" font-size="8pt" space-after="6pt">
<fo:static-content flow-name="pied-couverture">
<xsl:call-template name="pied-couverture">
</xsl:call-template>
<!-- <fo:block text-align="left" font-size="7pt" space-after="6pt">
Pôle Document numérique – MRSH – université de Caen Normandie
<xsl:text> – </xsl:text>
<xsl:value-of select="format-dateTime(current-dateTime(),'[D,2]/[M,2]/[Y]')" />
</fo:block>
</fo:static-content>
<fo:static-content flow-name="pied-couverture">
<fo:block text-align="center" font-family="serif" font-size="8pt">
<xsl:text>Page </xsl:text><fo:page-number/>
</fo:block>
<xsl:text> – </xsl:text>
<fo:page-number/>
</fo:block> -->
</fo:static-content>
<fo:flow flow-name="xsl-region-body">
<fo:block text-align="center" font-size="14pt" font-style="italic" space-after="16pt">
......@@ -87,23 +88,18 @@
<fo:page-sequence master-reference="corps">
<!-- Description des en-têtes et pieds de pages, séparateur de bloc de notes de bas de page, etc. -->
<fo:static-content flow-name="pied-premiere">
<fo:block text-align="left" font-family="serif" font-size="8pt">
<xsl:text>Page </xsl:text><fo:page-number/>
<fo:block text-align="center" font-family="Times" font-size="8pt">
<fo:page-number/>
</fo:block>
</fo:static-content>
<fo:static-content flow-name="entete-impaire">
<fo:block text-align="center" font-family="serif" font-size="8pt">
<xsl:apply-templates select="//tei:title[@type='main']"/>
<xsl:apply-templates select="//tei:author[@role='aut']"/>
</fo:block>
</fo:static-content>
<fo:static-content flow-name="pied-impaire">
<fo:block text-align="center" font-family="serif" font-size="8pt">
<xsl:text>Page </xsl:text>
<fo:page-number/>
</fo:block>
<fo:block text-align="right" font-family="serif" font-size="8pt">
<xsl:value-of select="format-dateTime(current-dateTime(),'[D,2]/[M,2]/[Y]')" />
</fo:block>
<xsl:call-template name="pied-impaire">
</xsl:call-template>
</fo:static-content>
<fo:static-content flow-name="entete-paire">
<fo:block text-align="center" font-family="serif" font-size="8pt">
......@@ -111,13 +107,8 @@
</fo:block>
</fo:static-content>
<fo:static-content flow-name="pied-paire">
<fo:block text-align="center" font-family="serif" font-size="8pt">
<xsl:text>Page </xsl:text>
<fo:page-number/>
</fo:block>
<fo:block text-align="right" font-family="serif" font-size="8pt">
<xsl:value-of select="format-dateTime(current-dateTime(),'[D,2]/[M,2]/[Y]')" />
</fo:block>
<xsl:call-template name="pied-paire">
</xsl:call-template>
</fo:static-content>
<fo:static-content flow-name="xsl-footnote-separator">
<fo:block>
......@@ -137,7 +128,7 @@
</fo:root>
</xsl:template>
<!-- début du teiHeader-->
<!-- début du teiHeader-->
<xsl:template match="tei:teiHeader" mode="header">
<fo:block>
<xsl:apply-templates select="./node()"/>
......@@ -272,15 +263,17 @@
<fo:block xsl:use-attribute-sets="texte_cover">
<xsl:for-each select="//tei:change">
<fo:block>
<xsl:value-of select="@when" /><xsl:text> : </xsl:text><xsl:value-of select="@who" />
</fo:block>
<xsl:value-of select="@when" />
<xsl:text> : </xsl:text>
<xsl:value-of select="@who" />
</fo:block>
</xsl:for-each>
</fo:block>
</xsl:template>
<!-- fin du teiHeader-->
<xsl:template match="tei:index">
</xsl:template>
<!-- fin du teiHeader-->
<xsl:template match="tei:index">
</xsl:template>
<xsl:template match="tei:note">
......@@ -297,7 +290,7 @@
<fo:table-column column-width="95%"/>
<fo:table-body>
<fo:table-row>
<fo:table-cell xsl:use-attribute-sets="cell">
<fo:table-cell xsl:use-attribute-sets="cell" text-align="left">
<fo:block>
<fo:inline font-size="7pt">
<xsl:value-of select="$number"/>
......@@ -367,6 +360,13 @@
</fo:block>
</xsl:template>
<xsl:template match="tei:persName/tei:surname">
<fo:inline>
<xsl:text></xsl:text>
<xsl:apply-templates/>
</fo:inline>
</xsl:template>
<!-- Un peu de typo -->
<!-- <xsl:template match="tei:hi">
<fo:inline>
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment