bunige-pagedjs-template/README.md

89 lines
2.9 KiB
Markdown
Raw Normal View History

---
title: Un modèle pagedjs pour la BUNIGE
date: 2023-04-21T11:19:03+02:00
id: 20230421111912
tags: [modèle, pagedjs, PDF, BUNIGE]
---
2023-04-21 11:16:30 +02:00
# [Un modèle *pagedjs* pour la BUNIGE][1]
## Licence
Ce projet est sous [licence MIT][2].
## 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][3].
Il a pour objectif d'être ajouté rapidement à un projet utilisant [paged.js][4]
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][4]: [interface.css][6]).
- 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][5].
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:
```bash
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:
```bash
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`:
```bash
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
```
<!-- références -->
[1]: ./
[2]: ./LICENSE
[3]: https://www.unige.ch/biblio/fr/ "Site officiel de la Bibliothèque de l'Université de Genève"
[4]: https://pagedjs.org/
[5]: https://raw.githubusercontent.com/citation-style-language/styles/blob/master/haute-ecole-de-gestion-de-geneve-iso-690.csl
[6]: https://gitlab.coko.foundation/pagedjs/interface-polyfill/-/raw/master/interface.css