• Szh hsearchnsearchisearchg Www -0B Html osearch 0 searchQsearch Kojsenko Iqiyi Szh Kojsenko Html Html Iqiyi _ Kojsenko h Html n Iqiyi i%CC%A8%CD%E5%BA%E9%D2%AF%C2%DB%CC%B3g1
  • autohint - Bool - QǷҪ Freetype Լ hint hint , ߀AOķ hint
  • rgba - Bool - QǷҪ subpixel ķʽ, none (ֻûA), rgb, bgr, vrgb, vbgr
  • Hinting Áѻ@ʾķΞĻޣ͵ĿsҪ иĿ, 箔һlλڃɂظgr, ԓȡ߅ĸ߀߅ ĸ? @Ŀƛ]ãͳF͵r]ЌRС Ť˵r Hinting ~YӍ, V renderer ԓ̎@Щ IJݣʹСֵĕr܉ÿҲ Hinting ǷdzMrM ĹTrueType ͺܶ࣬ Hinting Ͳࡣ׾ӵ Hinting ͕׌׃úy

    ΢@}freetype autohint ĹܣԄӞ] hint hinting Ĺ TrueType hinting Ќģ ȫɵʹã autohint Ͳ@ơautohint Ȼo hint һӺã^ٱț] hint ҪЩԒmˣSP}s () Ŀǰ freetype autohint ߀ò齨 hinting yȣʹӢ֣ԭͺܸߣȽ hinting ; ֮ˡԳ˱ԹΞĻϺyǛ] hinting, ʹ autohinter ɵһЩЧ

    Anti-alias njĻԔĴСLuȻٿsҪĴСδ MһĸûAacԭ X ֧Ԯ logic \㲻ʹãԲ XRender extension _Ŀġһ Anti-alias ֮⣬Xft ߀֧Ԯ ˞ LCD OӋ subpixel rendering.

    ʲN subpixel rendering? ÷ŴRȥ LCD, lFһεLСؘɵġ@ ͨǼtG{}dz hinting, Sr, distribution freetype bytecode hinting _ʹ̓Ȳ bytecode hinting freetype AO]д_ʹ freetype e^ autohinter, ЕrЧ eЕrsM⡣ hinting MrM󲿷ֵOӋ hinting ĕrֻᘌcֵ@ʾ hinting Ĺ@ʾ҂ @ʾС anti-aliasing ԒͨDzOӋѻĹȵ; hinting ĕrС anti-aliasing ͕@÷dzyŤ˻ DһFP@ freetype ˺ܶŬ autohinter Ҳ׌ʽ Լ hinting 㷨 hinting ǂֵܼĆ}Mac OS X anti-aliasing ;Ͷʹ hinting. fontconfig ׌҂{}ص pattern match: Ҫʹ pattern match, ֻҪµ pattern, ͕е:

    <match target="pattern">
    ...
    </match>

    gŵĿһB test, ȻһB edit. test ÷:

    <test qual="any|all|first|not_first"
    name=""
    compare="eq|not_eq|less|less_eq|more|more_eq|contains|not_contains">
    ֵ
    </test>

    any ָf, ֻҪ͵ԓ list ֮һзҪ test ֵ, test ͕all ԒҪ list ֮еĶϣfirst Ҫһϣ not_first Ҫ˵һзϵġֻͨõ any, AOҲ any. name eľǰČ, name="family". compare DZ^ėl, eq , less С, Դơ <test> סǂֵҪÁ^ֵ : int, double, string, matrix, bool ȵȡһ test ėl, ͕Mе edit AΣ݋ϗl test lČ:

    <edit name=""
    mode="assign|assign_replace|prepend|append|prepend_first|append_last">
    ֵ
    </edit>

    ע fontconfig , (property) һ list, ༴һԿ Sֵ assign f match ֵȡ, assign_replace fԓ list ֵȡֵָ, prepend tDz list б match ǂֵ ǰ^, Դơ

    fonts.conf eһ:

      <match target="pattern">
    <test name="prefer_outline">
    <bool>true</bool>
    </test>
    <test name="family">
    <string>Times</string>
    </test>
    <edit name="family" mode="prepend" binding="same">
    <string>Times New Roman</string>
    </edit>
    </match>

    @ pattern match f, prefer_outline ֵ true ĕr, family ֽ Times, NͰ family list ǰ Times New Roman@ԭ, Times c, ϣSóʽָ Times @ʾr, Ҫc@ʾ, Ҫ Times New Roman @ TrueType @ʾ, @ӿ԰ Times New Roman ăș Times ǰ档 Family matching һN match ÷ pattern matching  ֻᘌe͵Č޸ģ÷:

    <match target="font">
    ...
    </match>

    eӣ׌AO܉_ anti-aliasing, hinting Kʹ subpixel rendering, Ҿ͌:

      <match target="font">
    <edit name="antialias"><bool>true</bool></edit>
    <edit name="rgba" mode="assign"><const>rgb</const></edit>
    <edit name="hinting"><bool>true</bool></edit>
    </match>

    ҿX Luxi Mono @ijЩr, subpixel ̫ÿ, Ҿ͌:

      <match target="font">
    <test name="family"><string>Luxi Mono</string></test>
    <edit name="rgba"><const>none</const></edit>
    </match>
    [edit]

    FAQ

    Q. кܶ ttf, ҪNb?

    ǰf^, ȫG ~/.fonts/ e^ȥɡ symbolic link ҲԡG֮һ fc-list гѰbͿЛ]e档

    Q. b, ҵijʽ (rxvt, aterm, gtk1.x) sʹ

    @Щʽʹ X core fonts, ʹ fontconfig Ҳ]֧Ԯ Xft, ͛]k@ӵı^߀ǿ͸^yķʽb@Щ͡µ gtk2, Gnome2, mlterm, Mozilla (Firebird), Qt3.x ֧Ԯ fontconfig

    Q. Ҫʹ¼wԆ᣿

    , mingliu.ttc G ~/.fonts ˡ

    Q. Ҫ Windows Сǘӵ¼wkأʲNһЩС¼wĹPأ

    ()w 11, 12, 13, 15, 16, 20 cĴС؄eǶc֣QԒfֵ hinting ףЕrc֕^Ч¼wʹ bytecode MϹP, ]оM bytecode interpreter freetype 汾 render ĕr򣬾͕Ո_ϵy freetype2 source ֮, include/freetype/config/ftoption.h e #defineTT_CONFIG_OPTION_BYTECODE_INTERPRETER Dzд_ҲʹÃȽ autohinter. ׂضĴСǃȽcͣԛ]б bytecode interpreter Ӱ푡 _ freetype оM bytecode interpreter ֮, O׌¼w@ЩСr@ʾȽcֶҪ anti-aliased, ~/.fonts.conf :
      <match target="font">
    <test name="family"><string>PMingLiU</string></test>
    <edit name="antialias"><bool>true</bool></edit>
    <edit name="hinting"><bool>true</bool></edit>
    <edit name="autohint"><bool>false</bool></edit>
    </match>
    <match target="font">
    <test name="family"><string>PMingLiU</string></test>
    <test name="size" compare="less_eq"><int>12</int></test>
    <edit name="antialias" mode="assign"><bool>false</bool></edit>
    <edit name="hinting" mode="assign"><bool>true</bool></edit>
    </match>


    Q. ҵļw (MingLiU) Ӣֺ֕Ȍ?

    MingLiU QԼ monospaced ͣHЃɷNȣĵȫԼӢĵİΡ freetype ͱ_; ͬӵҲlAһЩϡFreetype Ђ globaladvance flag:
      <match target="font">
    <test name="family"><string>MingLiU</string></test>
    <edit name="globaladvance"><bool>false</bool></edit>
    </match>
    fһ鲻ԭ, @], N߀Ը spacing:
      <match target="font">
    <test name="family"><string>MingLiU</string></test>
    <edit name="spacing"><int>0</int></edit>
    </match>
    0 proportional spacing, 100 mono, 110 charcell.

    Q. Ҫ Gnome2 xεӢͷ_O

    Gtk2 ʹÃɽM alias: Sans Serif. Sans ǟor˼Ҳ Arial, Verdana ȵ߅Ƿ֡Serif tr֣ Times. fontconfig ȡęC, ޸ /etc/fonts/fonts.conf e@һΣ

    P:

      <alias>
    <family>Bitstream Vera Sans</family>
    <family>Helvetica</family>
    <family>Arial</family>
    <family>Verdana</family>
    <family>Nimbus Sans L</family>
    <family>Luxi Sans</family>
    <family>Kochi Gothic</family>
    <family>PMingLiU</family>
    <family>AR PL KaitiM GB</family>
    <family>AR PL KaitiM Big5</family>
    <family>Baekmuk Dotum</family>
    <family>SimSun</family>
    <default><family>sans-serif</family></default>
    </alias>
    c@һ:
      <alias>
    <family>sans-serif</family>
    <prefer>
    <family>Bitstream Vera Sans</family>
    <family>Verdana</family>
    <family>Nimbus Sans L</family>
    <family>Luxi Sans</family>
    <family>Arial</family>
    <family>Helvetica</family>
    <family>Kochi Gothic</family>
    <family>PMingLiU</family>
    <family>AR PL KaitiM GB</family>
    <family>AR PL KaitiM Big5</family>
    <family>Baekmuk Dotum</family>
    <family>SimSun</family>
    </prefer>
    </alias>
    ҪQ list ͼMȥǰ, ڮзҪ@ʾZԵֵĕr͕ϣҰ PMingLiU OĶǰ棬PMingLiU ͕Ҫ@ʾĵĕrȱxȻfPMingLiU K Sans-serif Ҫ serif, Ҫ Bitstream Vera Sans 䣬ʷһ

    Q. ֵĆ}Dz֪ĺNk

    XFT_DEBUG @h׃@ʾͬĂeYӍ_һ terminal, XFT_DEBUG OҪеijʽ֮ǰҲSԎҵ}пOĔֵУ
      XFT_DBG_OPEN 1
    XFT_DBG_OPENV 2
    XFT_DBG_RENDER 4
    XFT_DBG_DRAW 8
    XFT_DBG_REF 16
    XFT_DBG_GLYPH 32
    XFT_DBG_GLYPHV 64
    XFT_DBG_CACHE 128
    XFT_DBG_CACHEV 256
    XFT_DBG_MEMORY 512
    Ҫͬr_ijׂex헣ͰֵӾͿˡ XFT_DEBUG=3 mozilla _һ͵ڶx헵ģʽ_ mozilla. Ȥǣ GLYPH GLYPHV ͬr_r, Xft console ascii art ӡ :)