bunige-pagedjs-template/README.md

2.9 KiB
Raw Blame History

title date id tags
Un modèle pagedjs pour la BUNIGE 2023-04-21T11:19:03+02:00 20230421111912
modèle
pagedjs
PDF
BUNIGE

Un modèle pagedjs pour la BUNIGE

Licence

Ce projet est sous licence MIT.

Description

Ce projet est un modèle et une mise en forme pour produire un PDF suivant la charte de la Bibliothèque de l'Université de Genève.

Il a pour objectif d'être ajouté rapidement à un projet utilisant paged.js pour générer des PDF à partir d'un contenu en markdown.

Structure du répertoire

À la racine du répertoire se trouve les fichiers nécessaires au modèle:

  • Le modèle lui-même: template.html.
  • La feuille de style qui rend possible l'interface web pour la prévisualisation du document au format HTML: interface.css (fichier faisant partie du projet paged.js: interface.css).
  • Le fichier de style bibliographique qui fait partie à part entière du modèle, car il est la norme utilisée par la charte: heg-iso-690.csl. Il est extrait du répertoire des styles .csl: haute-ecole-de-gestion-de-geneve-iso-690.csl.

Dans le dossier example se trouvent les sources pour pouvoir donner un exemple:

  • Le document markdown lui-même: example.md.
  • Une liste de références bibliographiques au format BibLaTeX: references.bib.

Prérequis

  • pandoc.
  • pagedjc-cli (npm install -g puppeteer pagedjs pagedjs-cli).

Génération du PDF d'exemple

Lancer les commandes depuis le répertoire ./example.

Pour générer le fichier HTML a visualiser dans le navigateur:

pandoc --standalone --pdf-engine=pagedjs-cli \
       --template=../template.html --css=../style.css \
       --toc --toc-depth=2 --citeproc \
       --to=html --output=example.html example.md

Puis lancer un serveur web à la racine du projet (par exemple avec python -m http.server), et ouvrir le fichier HTML généré avec Chromium (ou Chrome) pour pouvoir l'imprimer au format PDF.

Pour générer directement le PDF:

pandoc --standalone --citeproc \
       --to=pdf --pdf-engine=pagedjs-cli \
       --css=../style.css --toc --toc-depth=2 \
       --output=example.pdf example.md

Pour générer le PDF en utilisant pagedjs:

pandoc --citeproc --to=html --toc --toc-depth=2 \
       --template=../template.html --css=../style.css \
       --output example.html example.md \
       && pagedjs-cli example.html --style ../style.css --output example.pdf