Mikeandmore 发表于 2005-9-17 18:29:52

我的意思是FC类

即:
fedora core
mandrake
suse
redhat
magic linux
这一类发型版

Mikeandmore 发表于 2005-9-17 18:36:06

目前粗体早就搞定

斜体有问题

if (val->key.flags & PRIVATE_FLAG_OBLIQUE &&
      (face->style_flags & FT_STYLE_FLAG_ITALIC) == 0) {
      FT_GlyphSlot_Oblique (glyphslot);
}

...

FcBool embolden=FcFalse;

      int w=-1;

      /*if (FcPatternGetBool (pattern,
                              FC_EMBOLDEN, 0, &embolden) != FcResultMatch)
            embolden = FcFalse;*/
      if (FcPatternGetInteger (pattern,FC_WEIGHT, 0, &w) != FcResultMatch) embolden = FcFalse;
      if(w==FC_WEIGHT_BOLD) embolden=FcTrue;

      if (embolden)
            load_flags |= PRIVATE_FLAG_EMBOLDEN;
    }


看上去ok吧
但是在freetype中
FT_EXPORT_DEF( void )
FT_GlyphSlot_Oblique( FT_GlyphSlotslot )
{
    FT_Matrix    transform;
    FT_Outline*outline = &slot->outline;


    /* only oblique outline glyphs */
    if ( slot->format != FT_GLYPH_FORMAT_OUTLINE )
      return;

    /* we don't touch the advance width */

    /* For italic, simply apply a shear transform, with an angle */
    /* of about 12 degrees.                                    */

    transform.xx = 0x10000L;
    transform.yx = 0x00000L;

    transform.xy = 0x06000L;
    transform.yy = 0x10000L;

    FT_Outline_Transform( outline, &transform );
}
所以必须对FT_GLYPH_FORMAT_BITMAP进行斜体算法
我目前没有什么办法,也许请教以下firefly。他patch过freetype

mandrakechina 发表于 2005-9-17 19:03:40

小字号的斜体,根本就看不清楚。

Mikeandmore 发表于 2005-9-18 16:47:29

果真如此。。。

大概是 transform的值的问题

jcome 发表于 2005-9-18 19:57:17

果真如此。。。

大概是 transform的值的问题

是不是把你的标题改改 :!:

Mikeandmore 发表于 2005-9-19 18:32:17

对!谢谢提醒,跑了

yangh 发表于 2005-9-19 21:20:18

首先,可以肯定我的系统里粗斜体都没有问题,粗体是 sunmoon 提交的补丁后才有的,斜体则是打我的补丁后出来的,我的补丁在

http://www.linuxfans.org/nuke/modules.php?name=Forums&file=viewtopic&t=128453&start=30

http://www.linuxfans.org/nuke/modules/Forums/files/cairo-ft-oblique-fix.diff

并不是只有楼主贴的那几行。

现在 cvs 里的 cairo 似乎还没收这个补丁。

mandrakechina 发表于 2005-9-19 22:45:15

拜托,您老人家得自己去跟cairo的人说要收入这个补丁。cairo的人不会自发的满世界搜索补丁 :D

另外,好像你的补丁会使得cairo在build的时候依赖autoconf和automake。不过确实如Mikeandmore所说,虽然小字号的斜体根本就看不清楚,但可能应该还是有这个功能比较好。

sunmoon1997 发表于 2005-9-20 01:53:17

这是我的方案对 fontconfig 和 cairo 同时动了一下手术:D
cairo-1.0 的的要相应的改一下:D
ps. fontconfig 部分实际是 frefly 写的。
fontconfig-2.3.2-prefer-localized-family-name.patch与斜体并不相关, 是让 fontconfig 显示本地化字体名的, 一起送上了,呵呵:P

Mikeandmore 发表于 2005-9-20 18:47:33

问yaugh:
你的补丁中FC_OBLIQUE的定义是什么???

在哪里有它的定义?




文鼎pl的字体我都试过有斜体!!!

simsun没有!

sunmoon1997的补丁也许是对的。

Mikeandmore 发表于 2005-9-20 18:49:29

我的思路是再patch一下freetype
页: 1 [2]
查看完整版本: 提一个cairo的斜体解决方案