Nachdem ich einen Tag lang versucht habe, koreanische Schriftarten in meiner LaTeX-Datei zu verwenden, bitte ich in diesem Forum um einige hilfreiche Einblicke.
Ich verwende MiKTeX 2.9 (vor ein paar Tagen von 2.7 aktualisiert). Bisher konnte ich englisches Latex ohne Probleme verwenden. Ich habe den MiKTeX-Paketmanager (Admin) verwendet und , installiert cjk
und cjk-fonts
die Optionen (Admin) verwendet cjkpunct
, miktex-cjkutils-bin-2.9
um FNDB zu aktualisieren und Formate zu aktualisieren. Ich habe die CJK-Dokumentationsdatei unter gelesenhttp://www.inf.ed.ac.uk/systems/tex/CJK/CJK.txtund habe im Internet nach hilfreichen Beispielen gesucht. Soweit ich das beurteilen kann, habe ich die richtige Installation und Verwendung. Ich kann jedoch keine Ausgabe erhalten.
Ich habe zwei Dinge getan.
1) Aus der minimalen Latex-Quelldatei stammt der folgende Fehler: Das Koreanische wurde über die Tastatur im Vim-Editor eingegeben (ich habe auch Notepad verwendet).
Running miktex-makemf.exe... miktex-makemf: The kmj source file could not be found Running hbf2gf.exe Couldn't find 'kmg.cfg' miktex-maketfm: No creation rule for font kmj15 ! Font C61/mj/m/n/10/15=kmg15 at 10.0pt not loadable: Metric (TFM) file not found
\documentclass{article}
\usepackage{CJK}
\begin{document}
The following should be in Korean
\begin{CJK}{KS}{}
안녕하세요
\end{CJK}
The previous should be in Korean
\end{document}
2) Ich habe Folgendes geändert \begin{CJK}{UTF8}{}
und die Kodierung von vim über den Befehl auf UTF-8 geändert :set encoding=utf-8
. Ich habe einen anderen Fehler erhalten. Ich habe eine saubere Kompilierung zu dvi. Allerdings beschwert sich dvips über fehlende Schriftarten (auch yap versucht, diese fehlenden Schriftarten zu erstellen).
Trying to make PK font cyberbc5 at 600 DPI... Running miktex-makemf.exe... miktex-makemf: The cyberbc source file could not be found
Antwort1
Der Schlüssel zum Problem liegt darin, dass CJK
Sie bei Verwendung des Pakets die Eingabekodierung und die CJK-Schriftfamilie angeben müssen, entweder mithilfe CJK
der Umgebung oder mithilfe von \CJKencoding
, \CJKfamily
-Befehlen. Außerdem müssen Sie sicherstellen, dass Sie die Schriftarten installiert haben. (CJK-Schriftarten sind nicht immer vollständig installiert.)
In den verschiedenen TeX-Distributionen sind unterschiedliche CJK-Schriftarten installiert.
In MiKTeX (wie Sie es verwenden) sind Type1-Schriftarten cjk-fonts
verpackt , aber es scheint keine Dateien und LaTeX-Schriftartendefinitionsdateien ( ) zu geben, die diese Dateien unterstützen. Ich kann kein funktionierendes Beispiel erstellen, ohne die Dateien zu ändern, tut mir leid.myoungjo
.tfm
.fd
In TeX Live mit UTF-8-Kodierung und uhc
installiertem Schriftartenpaket ist nur mj
die Schriftfamilie für Koreanisch verfügbar. (Während gbsn
für gbsn
Chinesisch bsmi
, und bkai
für Japanisch .)
Hier ist ein Beispiel mit UTF8
Eingabecodierung (anders als KS
die von Ihnen verwendete):
% UTF-8 encoding, compile with pdflatex / latex+dvips / latex+dvipdfmx, TeX Live 2012
\documentclass{article}
\usepackage{CJK}
\begin{document}
The following should be in Korean
\begin{CJK}{UTF8}{mj}
안녕하세요
\end{CJK}
The previous should be in Korean
\end{document}
Wenn Sie KS
die Eingabekodierung verwenden (Standard KS X 1001:1992, KS C 5601-1992, siehe Dokument CJK.txt
), stehen Ihnen weitere Schriftarten zur Verfügung, aber Sie müssen ggf. diehlatex-SchriftartenPaket manuell. Für die meisten Benutzer ist dies ein fortgeschrittenes Thema, daher werde ich hier nicht zu viel erklären.
Es gibt nur wenige englische Dokumente zu CJK
Paketen und anderen Paketen, die CJK-Skripte unterstützen, aber Sie können auf die TeX-Gruppen/Foren/Sites in China, Japan oder Korea zugreifen, um weitere Informationen zu erhalten.
Ich bin Chinese und weiß daher nur wenig über die native Unterstützung koreanischer Schriftarten in LaTeX. Vielleicht können Sie nach HLaTeX suchen. Und ich kenne dieKoreanische TeX-Benutzergruppe(KTUG) hat eine eigene modifizierte TeX Live-Distribution mit viel mehr vorinstallierten koreanischen Schriftarten, und es gibtHLaTeX. (Wir Chinesen machen das auch.) Sie können über die Installation dieser TeX-Distributionen nachdenken.
Alternativ können Sie auch XeLaTeX mit unserem xeCJK
Paket verwenden. Ein Beispiel:
% UTF-8 encoding, compile with xelatex, TeX Live 2012
\documentclass{article}
\usepackage[space]{xeCJK} % space option is useful for Korean
\setCJKmainfont{Batang} % a Windows font
\begin{document}
The following should be in Korean
안녕하세요
The previous should be in Korean
\end{document}
Hinweis: xeCJK
ist ursprünglich für Chinesisch konzipiert, unterstützt aber auch Japanisch und Koreanisch (Wirhoffe, es wird besser). Es gibt tatsächlich ein natives koreanisches XeTeX-Paket xetexko
, verfügbar aufKTUG, aber ich weiß nichts darüber.
Antwort2
Um Code zu markieren, wählen Sie ihn aus und klicken Sie dann auf das Symbol mit den zwei Klammern. Oder fügen Sie einfach vier Leerzeichen vor jeder Zeile ein. Wenn jedoch – wie in Ihrem Fall – die Kodierung wichtig ist, ist es besser, die Testdatei in einem Zip-Ordner zu speichern und irgendwo zum Herunterladen bereitzustellen, da die Kodierung durch Kopieren und Einfügen leicht geändert werden kann.
Ich weiß nicht viel über CJK-Schriftarten (Sie sollten die Antworten von Leo Liu lesen, um weitere Einblicke zu erhaltenhttps://tex.stackexchange.com/users/2674/leo-liu), aber das hier funktioniert bei mir, wenn ich mit pdflatex kompiliere (die Datei ist UTF-8-kodiert):
\documentclass{article}
\pdfmapline{+cyberb@Unicode@ <cyberbit.ttf}
\usepackage{CJK}
\begin{document} The following should be in Korean
\begin{CJK}{UTF8}{} 안녕하세요 \end{CJK}
\end{document}
Sie müssen es haben cyberbit.ttf
(in meinem Fall ist es in meinem Standard-Windows-Schriftartenordner installiert).