小编Lak*_*ake的帖子

无法使用freetype获取某些特定.ttf字体的字距

我试图用freetype 2.6库从一些.ttf字体中提取字距调整信息.

这就是我如何获取字距信息(循环字符):

if( FT_HAS_KERNING(face->getFace()) && previous ){
    FT_Vector delta;
    FT_UInt glyph_index = FT_Get_Char_Index( face->getFace(), character );
    FT_UInt prev_index = FT_Get_Char_Index( face->getFace(), previous );
    FT_Get_Kerning( face->getFace(), prev_index, glyph_index,
                        FT_KERNING_DEFAULT, &delta );
    kerning = delta.x >> 6;
}
Run Code Online (Sandbox Code Playgroud)

我用一些不同的字体尝试了这个程序:"Times new roman.ttf","Tymes.ttf","minion.otf".对于Times new Roman字体,正确提取字距调整信息,我通过记录信息来检查.

问题是我不明白为什么字距调整总是0(即FT_HAS_KERNING返回false,而FT_GetKerning仍然返回0)其他2种字体.

我检查了fontforge,对于"VA"和"To"对,存在字距调整信息,它们就在那里!所以它们必须存储在.ttf中.然而,使用上面的代码,对于"VA"或"To",字距调整始终为0,或者FT_HAS_KERNING返回false.

我在这里缺少任何freetype选项或设置吗?任何一种启示都受到赞赏..

编辑:我正在设置面部大小

FT_Set_Pixel_Sizes( face->getFace(), 0, size);
Run Code Online (Sandbox Code Playgroud)

编辑:字体拼写中的"tymes"字体的字段信息: 在此输入图像描述

truetype freetype freetype2 kerning

8
推荐指数
1
解决办法
2114
查看次数

是否可以从宿主程序执行单个lua语句?

我正在尝试将基于lua的脚本系统嵌入到我的游戏引擎中.我希望脚本能够同时具有阻塞和非阻塞命令,例如:

character.walkTo(24, 359);  // Blocks until character arrives
c = 35; // Non blocking, execution goes on to the next statement
Run Code Online (Sandbox Code Playgroud)

由于"walkTo"需要"活动"超过1帧执行,我希望能够从Java主机而不是整个函数运行1个语句.这是因为拥有真正的多线程是不合适的,这是不需要的.

如果我只执行1个语句,并保持执行状态"暂停"直到下一个语句执行,我将能够通过检查命令是否在主机中完成来实现阻塞命令,如"walkTo",如果是,则去到下一个语句,否则,等到下一帧迭代.

有没有办法从带有LuaJ的Java主机(或任何其他Lua api)执行1个语句,或者我被迫使用lex和yacc开发自己的脚本引擎?

欢迎任何好主意,谢谢!

java lua luaj

5
推荐指数
1
解决办法
466
查看次数

当我尝试使用HTTP从Sonatype Nexus下载工件时重置连接

我在家中自己的服务器上设置了Sonatype Nexus存储库。该服务器已在端口8081上使用HTTP进行了设置,并且看起来可以从本地和远程浏览器正常工作。

问题是,当我尝试下载某些工件(仅其中一些工件,通常超过500Kb)时,在传输完成之前,系统(在服务器端)关闭了连接,从而导致网络错误。

curl -H --url http://<myserver>:8081/..../artifact.jar
> ....
> curl: (18) transfer closed with 116756 bytes remaining to read
Run Code Online (Sandbox Code Playgroud)

当我将nexus设置为与ssl一起运行时(在https上,端口8443),该问题神奇地消失了,但这需要我使用verisign等来验证证书,这只会使事情复杂化。

为什么上述伪像(总计约700Kb)的传输总是那样失败?原因可能是什么?

http nexus large-files sonatype maven

5
推荐指数
0
解决办法
761
查看次数

标签 统计

freetype ×1

freetype2 ×1

http ×1

java ×1

kerning ×1

large-files ×1

lua ×1

luaj ×1

maven ×1

nexus ×1

sonatype ×1

truetype ×1