2012-08-13 5 views
5

Obwohl das Ende-Problem, dass dies zu lösen wäre ein TeX (eine neue Schriftart für PDF-Ausgabe installieren), diese spezielle Lösung, die ich suche, ist ein Sphinx-Problem. Sphinx verwendet Standard-LaTeX beim Erstellen von PDF-Dateien, was bis jetzt gut ist, aber ich muss eine neue Schriftart installieren und habe es versucht und gescheitert. Ich verstehe, dass dies ein viel einfacherer Prozess ist, der XeLateX verwendet, also würde ich gerne wissen, ob es eine Erweiterung oder irgendeine Art gibt, Sphinx so zu konfigurieren, dass es stattdessen den XeLaTeX-Builder verwendet.Kann der XeLaTeX-Builder mit Sphinx verwendet werden?

+0

Ich denke, es ist besser, hier gefragt zu werden: http://tex.stackexchange.com/ – osyan

+3

Ich dachte zuerst daran, dort zu posten, aber wie oben erwähnt, hat das Problem nicht wirklich etwas mit Latex zu tun, sondern stattdessen mit der Konfiguration von Sphinx. – user1488804

Antwort

2

Ich denke, das läuft darauf hinaus, einige LaTeX-Anweisungen zu bekommen, bevor Sphinx seine Arbeit beginnt.

Zu Beginn Ihrer index.rst, können Sie einen „rohen“ Eintrag hinzufügen, die wörtlich zu Latex übergeben wird:

.. raw:: latex 

    \setyournicefontorwhatever(beautiful.ttf) 

Ist diese Hilfe in die richtige Schriftart zu bekommen? Ich verwende rohe Latex-Einträge selbst, um die Abschnittsnummern aus einem Teil meiner Dokumentation zu entfernen (\setcounter{secnumdepth}{-1} in einem ähnlichen "rohen" Eintrag).

Auch die Sphinx documentation on build options hat einige Dinge, die Sie ausprobieren können. Am vielversprechendsten ist die documentclass Position in der latex_documents Einstellung.

0

Es ist möglich, sphinx zu erlauben, den xelatex-Builder zu verwenden, indem man die make-Datei für xelatex modifiziert, oder einfach das doc in zwei Befehlen erstellt .... make latex, dann xelatex yourdoc.tex. Es ist jedoch wichtig, eine Reihe von Paketen zu deaktivieren, einschließlich: fontenc, inputenc und babel, da diese Eithier überhaupt nicht funktionieren oder Probleme in der Zukunft verursachen können. Ich denke, es könnte alternative Pakete in Leiu von Babel geben, wenn Sie es wünschen. Auch xelatex erlaubt bereits einige (aber nicht alle) Zeichen, die inputenc [utf8] normalerweise berücksichtigen würde.

diese Deaktivierung kann in Ihnen conf.py Datei durchgeführt werden, das doc zeigt ein gutes Beispiel dafür, wie diese unter „Option für Latex“ zu tun:

https://github.com/jterrace/sphinxtr/blob/master/conf.py

0

ich fügen Sie folgendes zu conf. py wenn xelatex mit:

latex_elements = { 

# Additional stuff for the LaTeX preamble. 
    'preamble': ''' \usepackage{fontspec} \setmainfont{Times New Roman} 
    ''', 
    'inputenc': '', 
    'fncychap': '', 
    'utf8extra': '', 
    'times': '', 
    'babel': '\usepackage{polyglossia}', 
    'cmap': '', 
    'fontenc': '', 
    'releasename': '', } 

Sie haben eine Menge der Standard-Latex-Pakete zu deaktivieren, weil xelatex andere Pakete verwendet oder die Funktionalität eingebaut haben.

Verwandte Themen