[PYTHON] So geben Sie ein Dokument im PDF-Format mit Sphinx aus

Einführung

Mit dem Python-Dokumenterstellungstool "Sphinx" können Sie zusätzlich zu HTML auch im PDF-Format ausgeben. Dieser Eintrag beschreibt das Verfahren zur Ausgabe im PDF-Format.

Erklären Sie in diesem Eintrag

In diesem Eintrag nicht erklärt

Annahme

--Installation des Python3-Systems --Sphinx 1.5 oder höher muss installiert sein

Referenz (Sphinx-Wenn Sie die beim Ausführen des Schnellstarts gestellte Frage wie folgt beantworten, wird das Verzeichnis getrennt. )



#Englische Ausgabe
$ sphinx-quickstart
> Separate source and build directories (y/N) [n]:y

#japanische Version
$ sphinx-quickstart
>Trennen Sie das Quellverzeichnis und das Erstellungsverzeichnis (y/ n) [n]:y

Autorenumgebung

  • macOS Catalina 10.15.3
  • Python 3.7.4
  • Sphinx 2.4.4
  • Homebrew 2.2.11

Referenz: Verfahren zur Bestätigung der Python-Version

$ python -V
Python 3.7.4

Referenz: Bestätigungsverfahren für die Sphinx-Version

$ pip show sphinx
Name: Sphinx
Version: 2.4.4
(Danach wird es weggelassen)

Referenz: Homebrew-Versionsprüfungsverfahren

$ brew --version
Homebrew 2.2.11
(Danach wird es weggelassen)

Fluss bis zur Ausgabe im PDF-Format

  1. Erstellen Sie eine TeX-Umgebung unter macOS
  2. Schreiben Sie conf.py neu, damit es auf Japanisch ausgegeben werden kann
  3. Führen Sie make latexpdf aus

Erstellen Sie eine TeX-Umgebung auf Ihrem Mac

Sphinx kann reStructuredText im PDF-Format über ein Format namens TeX (genauer gesagt LaTeX) ausgeben.

  • Tex wird "tefu" ausgesprochen.
  • Dieser Eintrag erklärt nicht TeX und den detaillierten Konvertierungsmechanismus.

Geben Sie den folgenden Befehl ein, um eine TeX-Umgebung unter macOS zu erstellen.

"Break cask install mactex-no-gui" nimmt viel Zeit in Anspruch. In meiner Umgebung hat es übrigens ungefähr 6 Stunden gedauert.

$ brew cask install mactex-no-gui

Das nächste "sudo tlmgr update --self --all" Abhängig von Ihrer Umgebung wird möglicherweise die Fehlermeldung "sudo tlmgr-Befehl nicht gefunden" angezeigt. Schließen Sie in diesem Fall das Terminal, öffnen Sie es erneut und geben Sie den Befehl ein.

Dieser Befehl braucht übrigens auch Zeit. In meiner Umgebung hat es ungefähr 2 Stunden gedauert.

$ sudo tlmgr update --self --all

Schreiben Sie conf.py neu, damit es auf Japanisch ausgegeben werden kann

Öffnen Sie conf.py im Verzeichnis "source", ändern / fügen Sie es wie folgt hinzu und speichern Sie es.

#Der Sprachteil'ja'Ändern
language = 'ja'

#Fügen Sie die folgende Zeile am Ende der Datei hinzu
latex_docclass = {'manual': 'jsbook'}
  • Es scheint, dass es verschiedene andere Spezifikationen für latex_docclass gibt, aber wir untersuchen dies derzeit.

Führen Sie make latexpdf aus

Wenn Sie den folgenden Befehl in dem Verzeichnis ausführen, in dem sich Makefile befindet, wird pdf in "build / latex" erstellt.

$ make latefpdf

Verweise

Recommended Posts

So geben Sie ein Dokument im PDF-Format mit Sphinx aus
So setzen Sie einen Hyperlink zu "file: // hogehoge" mit sphinx-> pdf
PDF mit Latex-Erweiterung mit Sphinx ausgeben
So schreiben Sie eine Dokumentzeichenfolge, um ein benanntes Tupeldokument mit Sphinx zu erstellen
Wie schreibe ich ein benanntes Tupeldokument im Jahr 2020?
So konvertieren / wiederherstellen Sie einen String mit [] in Python
[Einführung in Python] So geben Sie eine Zeichenfolge in einer Print-Anweisung aus
[ROS2] So spielen Sie eine Bag-Datei mit Start im Python-Format ab
So erstellen Sie eine Sphinx-Übersetzungsumgebung
So fügen Sie ein Paket mit PyCharm hinzu
So arbeiten Sie mit BigQuery in Python
Wie bekomme ich Stacktrace in Python?
[Kleine Geschichte] So speichern Sie Matplotlib-Diagramme in einem Stapel mit Jupyter
[Einführung in Python] So schreiben Sie eine Zeichenfolge mit der Formatierungsfunktion
So formatieren Sie eine Liste von Wörterbüchern (oder Instanzen) in Python
Wie man lernt, bis ein Anfänger in Statistik mit der Bayes'schen Statistik beginnt
Umgang mit Speicherlecks in matplotlib.pyplot
Lesen einer CSV-Datei mit Python 2/3
So senden Sie eine Nachricht mit Curl an LINE
[REAPER] Wie man Reascript mit Python spielt
So löschen Sie einen Taple in einer Liste (Python)
So zeichnen Sie ein 2-Achsen-Diagramm mit Pyplot
Einbetten von Variablen in Python-Strings
So entwickeln Sie eine Cart-App mit Django
So erstellen Sie eine JSON-Datei in Python
So erstellen Sie ein Wörterbuch mit einer hierarchischen Struktur.
Umgang mit Laufzeitfehlern in subprocess.call
So implementieren Sie eine Verlaufsauswahl in Houdini
So benachrichtigen Sie Discord-Kanäle in Python
Wie man tkinter mit Python in Pyenv benutzt
Verfahren zur Erstellung plattformübergreifender Apps mit kivy
[Python] Wie zeichnet man mit Matplotlib ein Histogramm?
So geben Sie "Ketsumaimo" standardmäßig in Python aus
So erstellen Sie eine Rest-API in Django
So zählen Sie Zahlen in einem bestimmten Bereich
So lesen Sie Dateien in verschiedenen Verzeichnissen
Wie man eine öffentliche Funktion in Pytest verspottet
So geben Sie mit Jupyter Notebook einen Wert in der Mitte einer Zelle aus
So legen Sie Google Text & Tabellen in einem Ordner zusammen in einer TXT-Datei mit Python ab
So zählen Sie die Anzahl der Elemente in Django und geben sie in die Vorlage aus
So erhalten Sie mit Python eine Liste der Dateien im selben Verzeichnis
PDF mit Django ausgeben
PDF mit WeasyPrint ausgeben
So legen Sie das Schema in den Django-Datenbankeinstellungen fest
[Python] Wie zeichnet man mit Matplotlib ein Liniendiagramm?
Ich möchte mit einem Knopf am Kolben übergehen
Erklären Sie ausführlich, wie Sie mit Python einen Sound erzeugen
So erstellen Sie ein Untermenü mit dem Plug-In [Blender]
So erhalten Sie einen angemeldeten Benutzer mit Djangos forms.py
So konvertieren Sie ein Klassenobjekt mit SQLAlchemy in ein Wörterbuch
Umgang mit Pyenv-Initialisierungsfehlern bei Fischen 3.1.0
So führen Sie mit OpenCV ein Null-Padding in einer Zeile durch
So führen Sie Tests zusammen mit Python unittest aus
[Python] So erweitern Sie Variablen in einer Zeichenfolge
Wie man ein Schießspiel mit toio macht (Teil 1)
Ein Memorandum zur Verwendung von Keras 'keras.preprocessing.image
So laden Sie Dateien in Google Drive mit Google Colaboratory
Konvertieren Sie das Bild in .zip mit Python in PDF
Zugriff mit dem Cache beim Lesen von_json mit Pandas