Kostenlose, häufig verwendete chinesische Schriftartenpakete mit 3.500, 7.000 und 20.000 Wörtern
1.Wählen Sie Fenster/TextMeshPro/Font Asset Creator
Hinweis: Schriftarten vorbereiten: Beziehen Sie chinesische Schriftartdateien aus der Schriftartenbibliothek oder anderen Quellen, normalerweise im .ttf-, .otf- oder .ttc-Format. Am einfachsten ist es, eine .ttc-Datei aus dem Schriftartenordner der Windows-Systemdateien zu ziehen (Laufwerk C > Windows-Ordner > Schriftartenordner). Es scheint, dass die Formate ttf und otf nicht unterstützt werden. Die Schriftartendateien und Schriftartenbibliotheksdateien müssen in den Ordner „Assets“ oder seinen Unterordner des Unity-Projekts kopiert werden.
2. Klicken Sie in der Einstellungsschnittstelle „Font Asset Creator“ auf „Schriftatlas generieren“, nachdem die Einstellung abgeschlossen ist.
Erklärung der Eigenschaft
Quellschriftartdatei: Wählen Sie die Schriftart aus, die zum Generieren von Text Mesh Pro-Schriftartenressourcen verwendet wird.
Sampling Point Size:设置用于生成字体纹理的字体大小(以磅为单位)。 Auto Sizing(默认):使用尽可能大的磅值,同时仍然适合纹理上的所有字符。 Custom Size:使用自定义磅值,在文本框中输入所需的大小,使用此设置可实现对仅位图字体的像素精确控制。
Padding: Gibt den Abstand (in Pixel) zwischen Zeichen in der Schriftstruktur an. Je größer die Auffüllung, desto glatter der Übergang, was eine hochwertigere Darstellung und größere Effekte wie dicke Konturen ermöglicht. Für 512x512-Texturen ist normalerweise eine Polsterung von 5 gut.
Packing Method:指定如何使字符适合字体纹理。 Optimum:查找仍然适合纹理中所有字符的最大可能自动字体大小。(最后打包的时候用) Fast(默认):更快地计算字符打包,但可能使用比优化模式更小的字体大小。(测试时使用) Atlas Resolution:设置字体纹理的大小宽度和高度,以像素为单位,512 x 512 的分辨率对于大多数字体来说都很好,只要您只包含 ASCII 字符即可。使用 SDF字体时,更高的分辨率会产生更精细的渐变,从而产生更高质量的文本。
Zeichensatz: Wählen Sie einen vordefinierten Zeichensatz aus: den Zeichenbereich der Schriftart, die Sie erstellen, d. h. alle Zeichen, die in der TextMeshPro-Schriftart enthalten sind, die Sie erstellen möchten. In unserem Fall sind es alles chinesische Schriftzeichen. Im Allgemeinen können gängige chinesische Schriftzeichen + englische Wörter + Symbole verwendet werden.
Ziehen Sie nach unten, um „Zeichen aus Datei“ auszuwählen, und wählen Sie dann die TXT-Datei aus, die alle erforderlichen Zeichen enthält (muss zuerst in Unity importiert werden). Siehe die Download-Adresse am Anfang des ArtikelsASCII(默认):包括 ASCII 字符集中的可见字符。 Extended ASCII:包括扩展 ASCII 字符集中的可见字符。 ASCII Lowercase:仅包含 ASCII 字符集中可见的小写字符。 ASCII Uppercase:仅包含 ASCII 字符集中可见的大写字符 Numbers+Sysbols:仅包括来自 ASCII 字符集的可见数字和符号。 Custom Range:输入一系列十进制值或值范围,以指定要包括的字符。 Unicode Range(Hex):输入一系列 unicode 十六进制值或值范围,以指定要包含的字符。 Custom Characters:输入字符序列以指定要包含的字符。 Characters from File:包括小伙伴们指定的文本资源中的所有字符。
Rendermodus: Gibt den Rendermodus an, der bei der Ausgabe des Schriftartenatlas verwendet werden soll.
SMOOTH:将图集渲染为抗锯齿位图。 RASTER:将图集渲染为非抗锯齿位图。 SMOOTH_HINTED:将图集渲染为抗锯齿位图,并将字符像素与纹理像素对齐以获得更清晰的结果。 RASTER_HINTED:将图集渲染为非抗锯齿位图,并将字符像素与纹理像素对齐以获得更清晰的结果。 SDF:使用较慢但更准确的 SDF 生成模式渲染图集,并且没有过采样。 SDFAA:使用更快但不太准确的 SDF 生成模式渲染图集,它生成的字体图集足以满足大多数情况。 SDFAA_HINTED:使用更快但不太准确的 SDF 生成模式渲染图集,并将字符像素与纹理像素对齐以获得更清晰的结果,它生成的字体图集足以满足大多数情况。 SDF8:使用较慢但更准确的 SDF 生成模式和 8 倍过采样渲染图集。 SDF16:使用更慢但更准确的 SDF 生成模式和 16 倍过采样渲染图集。 SDF32:使用较慢但更准确的 SDF 生成模式和 32 倍过采样渲染图集。将此设置用于具有复杂或小字符的字体。
Kerning-Paare abrufen: Aktivieren Sie diese Option, um Kerning-Daten aus der Schriftart zu kopieren.
Schriftatlas generieren: Schriftatlas-Textur generieren.
3. Nach der Generierung, wie unten gezeigt
Klicken Sie zum Speichern auf Speichern.
Hinweis: Wenn zu viele Zeichen fehlen, können Sie versuchen, die Schriftart zu ändern.
Fehlerbehebung
Jedes Zeichen hat eine weiße, durchscheinende Schattierung, da TextMeshPro zum Rendern gerichtete Distanzfelder verwendet.
Lösung: Setzen Sie die Shader-Eigenschaft des Textmaterials (TMP) auf Bitmap.
Warnung 1: Das angeforderte Zeichen kann nicht zur Atlas-Textur des Schriftart-Assets [msyhbd SDF] hinzugefügt werden. Bitte machen Sie die Textur [msyhbd SDF Atlas] lesbar.
Lösung 1: Wählen Sie die in der Schriftart enthaltene Atlas-Textur aus und klicken Sie dann auf „Ändern“. Wechseln Sie im Inspektor in den Debug-Modus und überprüfen Sie „Ist lesbar“.
Lösung 2: Öffnen Sie mit Notepad die .asset-Datei im Schriftartdateiverzeichnis, suchen Sie m_Isreadable:0, ändern Sie sie in 1 und speichern Sie sie. Das Prinzip ist das gleiche wie bei Lösung 1.
Warnung 2: Das für die Unterstreichung verwendete Zeichen ist nicht verfügbar im Schriftarten-Asset [msyhbd SDF]
Lösung 1: Suchen Sie die TextMeshPro-Datei im Projektfenster, wählen Sie „Ressourcen“ > „TMP-Einstellungen“ und aktivieren Sie „Warnungen deaktivieren“ im Inspektionsfenster, um die Warnung zu deaktivieren.
Lösung 2: Die Warnung wird wie folgt übersetzt: „Das für die Unterstreichung verwendete Zeichen ist im Schriftart-Asset [msyhbd SDF] nicht verfügbar“, d. h. der Unterstreichungsstil kann nicht verwendet werden. Fügen Sie für diese Warnung einfach das Unterstreichungszeichen zum Zeichen hinzu Stellen Sie die oben genannten Schritte ein und wiederholen Sie sie.
Warnung 3: „Das Zeichen mit dem Unicode-Wert \u3002 wurde nicht im Schriftart-Asset [msyhbd SDF] oder in möglichen Fallbacks gefunden. Es wurde durch das Unicode-Zeichen \u25A1 im Textobjekt [Text (TMP)] ersetzt.“ zu: „Das Zeichen mit dem Unicode-Wert \u3002 wurde in der Schriftartressource [msyhbd SDF] oder einem möglichen Fallback nicht gefunden. Es wurde durch das Unicode-Zeichen \u25A1 im Textobjekt [Text (TMP)] ersetzt.“ Wenn Zeichen eingegeben werden, die nicht im Schriftarttext enthalten sind, kann die Lösung dieselbe sein wie bei Warnung 2, Lösung 1: Deaktivieren Sie die Warnung, sodass auch bei der Eingabe von Zeichen, die nicht im Schriftarttext enthalten sind, nur das Unicode-Zeichen \ u25A1 wird in der Szenenoberfläche angezeigt und nicht als Warnung angezeigt, um das Debuggen des Projekts zu erleichtern.