
Ich entziffere alte indische Manuskripte mit XeLaTeX (Version 4.31) auf MacOS-Basis. Ich möchte „Benalgi Sign Anusvara“ ং (U+0982), „Bengali Anji“ ঀ (U+0980) und „Bengali Vowel Sign Uu“ ূ (U+09C2) eingeben. Glücklicherweise funktioniert Arun Debrays Einstellung bei mir. Vielen Dank! (Wie kann ich die bengalische Schrift in einem englischen Dokument verwenden?)
Deshalb habe ich versucht, die Datei von Arun Debray leicht zu ändern, um „Benalgi Sign Anusvara“ ং (U+0982) wie folgt anzuzeigen.
\documentclass[preview, margin=0.5cm]{article}
\usepackage{polyglossia}
\setmainlanguage{english}
\setotherlanguage{bengali}
% Replace this with whatever font you're using
\newfontfamily\bengalifont[Script=Bengali]{Akaash}
\title{\textbengali{ইংরেজি} and Bengali}
\usepackage{newunicodechar} % <=== Added
\newunicodechar{^^^^25bc}{{\symbolfont\symbol{"25BC}}} % <=== Added
\newunicodechar{^^^^0982}{{\symbolfont\symbol{"0982}}} % <=== Added
\defaultfontfeatures{Scale=MatchUppercase} % <=== Added
\newfontfamily\symbolfont{DejaVu Sans Mono} % <=== Added
\begin{document}
\maketitle
First English, \textbengali{তারপর বাংলা}
{^^^^25bc}
{^^^^0982}
\end{document}
Leider war das Ergebnis nicht erfolgreich. „Benalgi Sign Anusvara“ ং (U+0982) erscheint nicht. Sogar der vorhandene bengalische Buchstabe wird durch das Hinzufügen der Linien beschädigt. Im Vergleich dazu wird problemlos ein schwarzes Dreieck (U+0982) angezeigt. Können Sie mir einen Rat geben, wie ich diese Datei ändern kann, um diese drei Buchstaben zu erhalten? Vielen Dank im Voraus!
Antwort1
U+0982 ist ein bengalisches Zeichen:
\documentclass{article}
\usepackage{polyglossia}
\usepackage{newunicodechar}
\setmainlanguage{english}
\setotherlanguage{bengali}
% Replace this with whatever font you're using
\newfontfamily\bengalifont[Script=Bengali]{Bangla MN}
\defaultfontfeatures{Scale=MatchUppercase}
\newfontfamily\symbolfont{DejaVu Sans Mono}
\newunicodechar{▼}{{\symbolfont▼}}
\begin{document}
\title{\textbengali{ইংরেজি} and Bengali}
\author{Woonsaan Seok}
\maketitle
First English, \textbengali{তারপর বাংলা}
▼
\textbengali{^^^^0982}
\end{document}
Antwort2
Wie in den Kommentaren beschrieben,anjiwird in den Schriftarten nur selten umgesetzt.
Ich habe nur drei von über 98 Schriftarten mit bengalischem Unicode-Block gefunden, die es haben:
Als Workaround können Sie, wenn Ihre Hauptschriftart beispielsweise FreeSerif ist, ein \anji
Makro erstellen, das beispielsweise die bengalische Schriftart Noto Serif verwendet. Beide sind Serifenschriften, sodass sie sich gut kombinieren lassen.
MWE
\documentclass{article}
\usepackage{xcolor}\usepackage{fontspec}
\setmainfont{FreeSerif}[Script=Bengali,Colour=blue]
\newfontface\anjifont{Noto Serif Bengali}[Colour=red]
\newcommand\anji{{\anjifont ঀ}}
\begin{document}
\anji\ সৌরজগৎ বলতে সূর্য এবং এর সাথে মহাকর্ষীয়ভাবে আবদ্ধ সকল জ্যোতির্বৈজ্ঞানিক বস্তুকে বোঝায়। %from Wikipedia
\end{document}
Die Größe kann bei Bedarf angepasst werden.
Antwort3
newunicodechar
scheint das von Ihnen gemeldete Problem zu verursachen. Versuchen Sie, es zu vermeiden. In Bezug auf Anji funktioniert es nur mit einigen Schriftarten. Was auch immer der Grund sein mag, es funktioniert mit Noto Serif Bengali (https://www.google.com/get/noto/#serif-beng), aber nicht Akaash.