J'ai tenté de convertir mon mybook.adoc en mybook.pdf en utilisant pandoc et j'ai obtenu l'erreur suivante.

$ pandoc -s mybook.adoc -t asciidoc -o mybook.pdf
pandoc: cannot produce pdf output with asciidoc writer

Y a-t-il un autre outil que je devrais utiliser à la place ou de concert avec pandoc? Comment puis-je convertir asciidoc en pdf?

5
mherzl 23 mai 2018 à 01:54

6 réponses

Un autre flux de travail, que j'utilise beaucoup, consiste à créer du HTML à partir de votre fichier AsciiDoc à l'aide du processeur AsciiDoctor, en liant une feuille de style CSS personnalisée avec des règles de style d'impression:

asciidoctor -a stylesheet=path-to-stylesheet.css file.adoc

Vous pouvez ensuite ouvrir le fichier HTML dans votre navigateur et l'imprimer au format PDF.

Pour un style plus avancé, comme la numérotation des pages, les en-têtes, les pieds de page, les sauts de page et les colonnes, vous pouvez utiliser PrinceXML (ou d'autres produits similaires). Il s'agit d'un processeur de ligne de commande qui convertira le fichier HTML en PDF en utilisant les règles de style du CSS utilisé par le fichier HTML. PrinceXML applique des règles de style qui sont dans la norme CSS3 mais qui ne sont pas encore prises en charge par les navigateurs, vous permettant de créer des mises en page finement stylisées.

1
markbez 14 févr. 2019 à 08:08

Prérequis : tout ce dont vous avez besoin est Ruby (1.9.3 ou supérieur)

Installez un convertisseur PDF natif pour AsciiDoc - Asciidoctor PDF:

gem install asciidoctor-pdf --pre

Exécuter :

asciidoctor-pdf mybook.adoc

Vous devriez obtenir le fichier mybook.pdf dans le même répertoire.

7
Remis 6 août 2018 à 14:34

Le moyen le plus simple de convertir un document AsciiDoc en PDF est le suivant -

  • Ouvrez AsciiDocLive
  • Collez votre document dans l'éditeur et voyez l'aperçu
  • enregistrez-le au format HTML
  • Ouvrez n'importe quel convertisseur HTML en PDF en ligne
  • Téléchargez votre fichier HTML nouvellement généré
  • Convertissez en PDF et téléchargez-le.

Terminé.

3
Shailendra 19 juil. 2018 à 11:55

Suite à la réponse de @ Remis, j'ai utilisé le backend pdf d'asciidoctor.

Je ne savais pas comment installer asciidoctor-pdf sur nixos, mais j'ai réussi à trouver l'alternative suivante qui a fonctionné:

asciidoctor -r asciidoctor-pdf -b pdf or asciidoctor-pdf
0
mherzl 25 sept. 2018 à 04:13

Si Docker est installé, vous pouvez utiliser l 'AsciiDoctor Docker Image. Ensuite, vous pouvez utiliser l'image de manière interactive ou en mode batch comme expliqué ci-dessous:

Conditions préalables

  1. Installer Docker
  2. Installez l'image Docker:

    $ docker pull asciidoctor/docker-asciidoctor
    

Créez le pdf en exécutant la commande suivante:

$ cd [directory to where my book.adoc is located]
$ docker run --rm -v $(pwd):/documents/ asciidoctor/docker-asciidoctor asciidoctor-pdf mybook.adoc

Explication

  • docker run démarre un conteneur Docker
  • --rm nettoyage - supprime le conteneur Docker une fois la commande exécutée
  • -v monter un volume sur l'image
  • $(pwd) récupère le chemin du répertoire courant, par exemple la valeur de [directory to where my book.adoc is located] ci-dessus
  • documents le nom du volume monté dans le conteneur en cours d'exécution
  • asciidoctor/docker-asciidoctor le nom de l'image Docker utilisée pour créer le conteneur Docker
  • asciidoctor-pdf la commande qui déclenche réellement la génération de pdf
  • mybook.adoc le nom du fichier source AsciiDoc à partir duquel générer le pdf

Voir aussi la documentation docker run

0
matsev 10 mars 2020 à 13:33

Si vous utilisez VS Code, Ctrl + SHFT + P et saisissez AsciiDoc: Export document as pdf

3
Tebogo Mahlalela 24 févr. 2020 à 07:14