PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Cyrilisch sf



Oelle74
02-04-2012, 13:27
hallo,

ich würde gerne einen text auf russisch und deutsch in sf schreiben. wie kann ich die cyrillischen teile auf sf umstellen?

hier mein derzeitiger code und anbei mein pdf mit dem ergebnis.



\documentclass[12pt]{article}

\usepackage[latin1]{inputenc}
\usepackage[OT2, T1]{fontenc}
\usepackage{lmodern}

\pagestyle{empty}
\setlength{\parindent}{0cm}

\DeclareFontFamily{OT2}{cmr}{\hyphenchar\font45 }
\DeclareFontShape{OT2}{cmr}{m}{n}{<->wncyr10}{}
\DeclareFontShape{OT2}{cmr}{m}{it}{<->wncyi10}{}
\DeclareFontShape{OT2}{cmr}{m}{sc}{<->wncysc10}{}
\DeclareFontShape{OT2}{cmr}{b}{n}{<->wncyb10}{}
\DeclareFontShape{OT2}{cmr}{bx}{n}{<->ssub*cmr/b/n}{}

\DeclareFontFamily{OT2}{cmss}{\hyphenchar\font45 }
\DeclareFontShape{OT2}{cmss}{m}{n}{<->wncyss10}{}
\usepackage[russian,ngerman]{babel}

\newcommand{\cyrsf}{\fontencoding{OT2}\selectfont\ textcyrsf}


\begin{document}
\sffamily
Ziege -- \foreignlanguage{russian}{koz\'a}
\end{document}


bitte um hilfe!

rstuby
02-04-2012, 13:36
Benutze nicht lmodern. Diese Schrift unterstützt keine kyrillischen Buchstaben. Dann wird auf die Standardschrift cmr ausgewichen, sobald nichtdefinierte Zeichen kommen. Lass also einfach \usepackage{lmodern} weg (wenn du cm-super installiert hast, dürfte das auch gut aussehen) oder binde per \usepackage eine andere Schrift ein. Ich stehe z.Z auf \usepackage{paratype}, die ist jedoch für einspaltiges Layout auf Din A4 zu schmalläufig.

Oelle74
02-04-2012, 13:59
Benutze nicht lmodern. Diese Schrift unterstützt keine kyrillischen Buchstaben. Dann wird auf die Standardschrift cmr ausgewichen, sobald nichtdefinierte Zeichen kommen. Lass also einfach \usepackage{lmodern} weg (wenn du cm-super installiert hast, dürfte das auch gut aussehen) oder binde per \usepackage eine andere Schrift ein. Ich stehe z.Z auf \usepackage{paratype}, die ist jedoch für einspaltiges Layout auf Din A4 zu schmalläufig.

danke, so funktioniert's prinzipiell, aber die auflösung ist nicht so schön (cm-super hab ich leider nicht, ist zu groß).

gibt's eine andere schrift, die serifenlos ist, jedoch cyrillisch unterstützt, wo ich aber cm-super nicht brauche, um eine schöne auflösung zu haben?

danke!

rstuby
02-04-2012, 14:00
Hast du paratype mal probiert?

Ansonsten bin ich noch nicht weiter gekommen als hier http://www.mrunix.de/forums/showpost.php?p=340308&postcount=10, da ich z.Z. kein starkes Bedürfnis mehr nach anderen Schriften hatte (setze sowieso immer A5 oder mehrspaltig, daher finde ich die Laufweite von Paratype OK).

rstuby
02-04-2012, 14:05
Ach, ich sehe gerade beim Ausprobieren, dass bei deiner Eingabeweise ein einfaches \usepackage{paratype} offenbar nicht genügt, um diese Schrift auch für die kyrillischen Zeichen zu nutzen :-(

Oelle74
02-04-2012, 14:10
Hast du paratype mal probiert?

Ansonsten bin ich noch nicht weiter gekommen als hier http://www.mrunix.de/forums/showpost.php?p=340308&postcount=10, da ich z.Z. kein starkes Bedürfnis mehr nach anderen Schriften hatte (setze sowieso immer A5 oder mehrspaltig, daher finde ich die Laufweite von Paratype OK).

hab grad paratype probiert, funktioniert aber nicht. ich bekomme folgende fehlermeldung im log:



!pdfTeX error: c:\program files\miktex 2.9\miktex\bin\pdflatex.exe (file PTSans
-Regular-tlf-t1--base): Font PTSans-Regular-tlf-t1--base at 720 not found
==> Fatal error occurred, no output PDF file produced!


was kann ich da machen?

rstuby
02-04-2012, 14:13
Du hast es wohl noch nicht installiert oder musst noch mal auf der Konsole updmap ausführen, ABER es funktioniert mit OT2 anscheinend sowieso nicht :-(
D.h. bei mir läuft dein Dokument zwar mit \usepackage{paratype}, die Schrift wird aber nur für den lateinischen Teil benutzt.
Also: auf Ulrike Fischer warten...

rstuby
02-04-2012, 16:59
Mit \usepackage{amsfonts} geht's bei mir mit deinem Beispiel.
Mit \usepackabe{iwona} oder \usepackage{kurier} auch.

Oelle74
03-04-2012, 09:49
Mit \usepackage{amsfonts} geht's bei mir mit deinem Beispiel.
Mit \usepackabe{iwona} oder \usepackage{kurier} auch.

danke für die tipps, aber leider gibt's bei mir bei allen probleme:

amsfonts: da ist die deutsche schrift sehr pixelig (siehe anhang ams)

iwona + kurier: da funktioniert das weichheitszeichen nicht (siehe anhang).

was kann ich machen (wie gesagt, cm-super ist leider zu groß).

u_fischer
03-04-2012, 10:04
was kann ich machen

Also ich bin ja bereit reinzuschauen, aber ich bin nicht bereit rumzuraten, welchen Code du zur Zeit kompilierst. pdf-Dateien brauche ich nicht, wichtig sind die tex-Dateien und die log-Dateien. Du müsstest dich auch entscheiden, welche Input-Methode du verwenden willst/bereit bist zu verwenden. Muss die Schrift OT2-kodiert sein, oder nimmst du auch T2A?




(wie gesagt, cm-super ist leider zu groß).

Zu groß für was?

Oelle74
03-04-2012, 10:16
Also ich bin ja bereit reinzuschauen, aber ich bin nicht bereit rumzuraten, welchen Code du zur Zeit kompilierst. pdf-Dateien brauche ich nicht, wichtig sind die tex-Dateien und die log-Dateien. Du müsstest dich auch entscheiden, welche Input-Methode du verwenden willst/bereit bist zu verwenden. Muss die Schrift OT2-kodiert sein, oder nimmst du auch T2A?
Zu groß für was?

code steht ja grundsätzlich oben bis auf eine kleine änderung. hier also der aktuelle code:

ams:



\documentclass[12pt]{article}

\usepackage[OT2, T1]{fontenc}
\usepackage{amsfonts}
\usepackage[latin1]{inputenc}

\pagestyle{empty}
\setlength{\parindent}{0cm}

\DeclareFontFamily{OT2}{cmr}{\hyphenchar\font45 }
\DeclareFontShape{OT2}{cmr}{m}{n}{<->wncyr10}{}
\DeclareFontShape{OT2}{cmr}{m}{it}{<->wncyi10}{}
\DeclareFontShape{OT2}{cmr}{m}{sc}{<->wncysc10}{}
\DeclareFontShape{OT2}{cmr}{b}{n}{<->wncyb10}{}
\DeclareFontShape{OT2}{cmr}{bx}{n}{<->ssub*cmr/b/n}{}

\DeclareFontFamily{OT2}{cmss}{\hyphenchar\font45 }
\DeclareFontShape{OT2}{cmss}{m}{n}{<->wncyss10}{}
\usepackage[russian,ngerman]{babel}

\newcommand{\cyrsf}{\fontencoding{OT2}\selectfont\ textcyrsf}


\begin{document}
\sffamily
Ziege -- \foreignlanguage{russian}{koz\'a}\\
Pferd -- \foreignlanguage{russian}{konp1}
\end{document}


iwona:



\documentclass[12pt]{article}

\usepackage[OT2, T1]{fontenc}
\usepackage{iwona}
\usepackage[latin1]{inputenc}

\pagestyle{empty}
\setlength{\parindent}{0cm}

\DeclareFontFamily{OT2}{cmr}{\hyphenchar\font45 }
\DeclareFontShape{OT2}{cmr}{m}{n}{<->wncyr10}{}
\DeclareFontShape{OT2}{cmr}{m}{it}{<->wncyi10}{}
\DeclareFontShape{OT2}{cmr}{m}{sc}{<->wncysc10}{}
\DeclareFontShape{OT2}{cmr}{b}{n}{<->wncyb10}{}
\DeclareFontShape{OT2}{cmr}{bx}{n}{<->ssub*cmr/b/n}{}

\DeclareFontFamily{OT2}{cmss}{\hyphenchar\font45 }
\DeclareFontShape{OT2}{cmss}{m}{n}{<->wncyss10}{}
\usepackage[russian,ngerman]{babel}

\newcommand{\cyrsf}{\fontencoding{OT2}\selectfont\ textcyrsf}


\begin{document}
%\sffamily
Ziege -- \foreignlanguage{russian}{koz\'a}\\
Pferd -- \foreignlanguage{russian}{konp1}
\end{document}



für cm-super hab ich nicht genug speicherplatz.

was ist der unterschied zwischen OT2 und T2A?

für mich ist das ergebnis wichtig: ich möchte in einer sans serif schrift deutsch und cyrillisch in einem text schreiben und die auflösung soll für beide schriften schön und nicht pixelig sein.

u_fischer
03-04-2012, 11:10
Nun, amsfonts benötigt die cm-super-Schriften. Die fallen also weg.

Iwona + OT2 fehlt die p+1-Ligatur, aber du kannst das Zeichen durch direkte Angabe der \char-Position erreichen:


\documentclass[12pt]{article}

\usepackage[OT2, T1]{fontenc}
\usepackage{iwona}
\usepackage[latin1]{inputenc}

\pagestyle{empty}
\usepackage[russian,ngerman]{babel}

\begin{document}

Ziege -- \foreignlanguage{russian}{koz\'a}\\
Pferd -- \foreignlanguage{russian}{kon\char"7E}
\end{document}

Mit T2A solltest du nach Möglichkeit utf8 und direkte Eingabe verwenden. Es geht aber auch \cyra etc:


\documentclass[12pt]{article}

\usepackage[T2A, T1]{fontenc}
\usepackage{iwona}
\usepackage[utf8]{inputenc}

\pagestyle{empty}
\usepackage[russian,ngerman]{babel}

\begin{document}

Pferd -- \foreignlanguage{russian}{конь \cyra \cyrz}
\end{document}




Mit xelatex kannst du jede Schrift benutzen, die du auf deinem PC hast. Auch hier sollte die Datei utf8 kodiert sein.


\documentclass[12pt]{article}

\usepackage{fontspec}
\setmainfont[Ligatures=TeX]{Arial}
\usepackage{polyglossia}
\setmainlanguage{german}
\setotherlanguage{russian}
\begin{document}
Pferd -- конь
\end{document}

Oelle74
03-04-2012, 11:34
Nun, amsfonts benötigt die cm-super-Schriften. Die fallen also weg.

Iwona + OT2 fehlt die p+1-Ligatur, aber du kannst das Zeichen durch direkte Angabe der \char-Position erreichen:


Mit T2A solltest du nach Möglichkeit utf8 und direkte Eingabe verwenden. Es geht aber auch \cyra etc:


Mit xelatex kannst du jede Schrift benutzen, die du auf deinem PC hast. Auch hier sollte die Datei utf8 kodiert sein.

danke für die tipps, doch leider haben alle 3 möglichkeiten gewisse nachteile:

Iwona + OT2 fehlen leider viele andere buchstaben auch noch, nicht nur p1.

ich habe keine russische tastatur, daher sind die beiden anderen möglichkeiten auch nicht wirklich effizient.

gibt's noch andere möglichkeiten?

u_fischer
03-04-2012, 11:50
Besorg dir einen USB-Stick oder eine externe Festplatte und installiere die cm-super-Schriften darauf.

Oder frage bei den Autoren von iwona + kurier, ob sie die Ligaturen einbauen können (du kannst natürlich auch selbst lernen, wie man die tfm-Dateien anpassen muss).

Oder lerne wie man Russisch mit einer virtuellen Tastatur direkt eingibt.

rstuby
03-04-2012, 13:19
Übrigens ergibt die Google-Suche nach "kyrillische Tastaturaufkleber" eine ganze Menge deutschprachige Treffer. Es besteht also eine gewisse Chance, dass die in Deutschland zu kriegen sind.

u_fischer
03-04-2012, 13:22
Und mit xelatex gibt es auch noch die Möglichkeit eine mapping-Datei zu benutzen:

http://tex.stackexchange.com/questions/44709/serbian-cyrillic-using-luatex-and-xetex

johansjohe
03-04-2012, 21:16
Hallo Oelle74,

es gibt bereits ein Treat zu Kyrillisch mit latex von 2005, der für die interessant sein könnte.
http://mrunix.de/forums/showthread.php?t=37258

Wenn ich es richtig verstanden habe, dann willst du ja sowas:


\documentclass{scrbook}

\usepackage[OT2, T1]{fontenc}
\usepackage[russian,ngerman]{babel}
\usepackage[ansinew]{inputenc}

\usepackage{cyrillic}
\newcommand{\cyrmod}{%
\renewcommand\rmdefault{wncyr}%
\renewcommand\sfdefault{wncyss}%
\renewcommand\encodingdefault{OT2}%
\normalfont\selectfont}
\DeclareTextFontCommand{\textcyr}{\cyrmod}

\renewcommand{\familydefault}{\sfdefault}


\pagestyle{empty}
\parindent0cm

\begin{document}

Ziege -- \textcyr{koz\'a}\\
Pferd -- \textcyr{konp1}\\
Käfer -- \textcyr{z1uk}

\end{document}

Gegebenenfalls musst du das Paket cyrillic noch installieren.

Gruß Johannes

Oelle74
04-04-2012, 07:48
danke, das problem ist bei mir, dass die deutsche schrift sehr pixelig wird, da ich cm-super nicht installieren kann.
danke trotzdem!