日语字符的平滑字体呈现


12

我正在使用Windows 7并将字体平滑设置为ClearType。但是,日语字符在整个操作系统中非常粗略地显示。我能做什么才能像其他角色一样顺畅渲染?

以下是他们目前的样子:

截图


日语字符是否仅在Web浏览器中大致呈现?如果是这样,您使用的是哪种浏览器?
iglvzx

@iglvzx,我用的是Chrome。但问题不仅限于Chrome。写字板,Word等行为相同。
missingfaktor

好。谢谢你的澄清。我会将此信息添加到您的问题中。:)
iglvzx

顺便说一句,记住某些东西不是“平假名”,而是你记得平假名。正确的短语是“ひらがなを覚えた”
v.oddou

Answers:


4

问题是传统的日文字体(MS Gothic,MS PGothic,MS Mincho ......)还包括小尺寸的位图字体以及轮廓字体(通常用于字符22pt或更少)。这些位图不能应用于任何类型的平滑,因此会产生疯狂的难看的混淆,眼睛伤害外观。有几种解决方案:

从字体中剥离位图的步骤:

  • 复制你需要剥离的字体文件,例如msgothic.ttc中,从\Windows\Fonts到一个文件夹
  • 从MS TrueType SDK下载该BREAKTTC工具
  • 在您将字体复制到的文件夹中打开命令提示符并键入BREAKTTC msgothic.ttc。之后你可以看到ttc中的所有ttf文件被提取为FONT00.ttf~FONTxx.ttf

    breakttc

  • 现在您从Microsoft Typography下载FontTools。之后,提取删除EBDT(嵌入式位图数据表)所需的工具。命令语法如下SBIT32

    SBIT32 -d <original font file> <metric file> [output file]

    您需要为每个位图大小(通常从7到22)运行此操作以删除所有位图,如果手动输入则相当笨拙。自动化脚本会有很大帮助。

    @echo off
    copy %1 %2 >nul
    for /l %%i in ( 7,1,22 ) do (
        echo PPEM %%i > mtemp.txt
        echo END >> mtemp.txt
        sbit32 -d %2 mtemp.txt ftemp.ttf  
        del %2
        ren ftemp.ttf %2
    )
    del mtemp.txt

    保存上面的内容rmEBDT.bat并运行以下命令(MS Gothic为3,因为我们有3个提取的ttf文件)

    rmEBDT font00.ttf msgot2.ttf 
    rmEBDT font01.ttf msgotp2.ttf 
    rmEBDT font02.ttf msuigot2.ttf
  • 现在我们已经剥离了字体文件,我们可以重命名那些字体名称(独立于字体文件名),比如MS Gothic NB - No Bitmap,与旧字体一起使用,或者只使用旧名称并替换原始字体ttc文件,这是一个小小的趋势。
    无论哪种方式,我们需要将它们再次打包到ttc文件,以便安装回Windows。使用MAKETTC与文件夹相同的工具,BREAKTTC您也可以在此处找到它们。跑

    MAKETTC <TTC output file name> <TTF file 1> <TTF file 2> ...
  • 获取ttc文件后,如果您更改了字体名称,则只需将其直接复制到\Windows\Fonts新字体中,然后将UI,apps ...中的默认字体更改为该字体。如果要使用旧的字体名称,则必须从其他操作系统(如Linux live USB或Windows PE)启动,因为Windows始终在启动时加载MS Gothic。

本网站上的新用户在三小时内发布五个帖子,推荐相同的节目。看起来太垃圾了。请不要这样做。您是否以某种方式与软件开发人员建立了联系?
Daniel Beck

只需回答一个问题,然后找出一些相关的问题,我也回答它们。是禁止的吗?
phuclv 2013年

不幸的是,有垃圾邮件发送者,他们的行为基本相同,在一堆类似的问题上宣传他们自己的软件。然后,版主需要确定它是合法的建议还是垃圾邮件。我们有时会犯错误,并认为爱好者是垃圾邮件发送者。之前的评论更多的是建议防止您的帖子被错误地删除。
Daniel Beck

2

这取决于字体。不同的字体具有不同的特征,包括字体平滑的不同行为。你可能在Mincho组中使用了一种字体,因为它们通常用作默认字体,它们可能有这样的问题; 哥特式字体可能在屏幕上更好用。


1
如何单独切换日文字符的字体样式?
missingfaktor

1
@missingfaktor,这取决于所使用的程序; 通常你不应该按语言切换字体样式,而是选择一个你需要的所有字符都可以接受的字体。当使用Word时,这可能是Arial Unicode MS,如果可以使用这种简单设计的无衬线字体 - 它具有非常宽的字符覆盖范围。
Jukka K. Korpela

2

Meiryo是Windows Vista / 7的默认日语字体,以及一些其他日语字体包含小尺寸的位图(像素)字符。

回到你的例子,我能够使用Firefox确认这一点:

  • ClearType(暗示)字符:

    暗示

  • 较小的字体大小; 位图字符:

    位图


默认情况下,Firefox对日语字体使用以下设置:

字体设置


因此,解决方案在于使用更大的字体大小或替换应用程序中的默认日语字体使用,并使用支持所有大小的提示字符(例如Arial Unicode)。

要在Windows中全局重新映射/替换字体,您可以在以下位置修改或添加注册表值

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes

在我的例子中,你可以注意到汉字是平滑的,而假名则没有。
missingfaktor

我认为这是由于字体大小或浏览器设置的轻微差异。我使用的是Firefox,而您的示例是在Google Chrome中。
iglvzx

1
不,Meiryo不包含位图,因为它已经设计用于字体平滑,因此它在任何字体大小中总是很漂亮。您只需将默认日语字体更改为Meiryo即可。只有带位图的旧字体很糟糕。It was decided that a new Japanese font was needed, as the current ones (mainly MS Gothic and MS Mincho) are incompatible with Microsoft's ClearType subpixel rendering technology[citation needed]: Meiryo is intended to increase legibility of characters on LCD screens
phuclv 2016年

Unlike previous fonts designed for CJK environments, Meiryo contains no embedded bitmaps. To improve readability under small font sizes without using embedded bitmaps, TrueType hinting language was used for stroke-reduction. Similar technology was used on MingLiU and PMingLiU versions 5.03. en.wikipedia.org/wiki/Meiryo#Characteristics
phuclv 2016年

绝对,我经历过Meiryo实际上修复了一切。我不知道为什么2017年的Windows(甚至10)在默认情况下仍然使用1990年的技术,并对此感到满意。
v.oddou
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.