ImageMagick:获取一行文字的宽与高

Posted 沙的空间

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ImageMagick:获取一行文字的宽与高相关的知识,希望对你有一定的参考价值。

double *fm = MagickQueryFontMetrics(mw_temp, dw_wand, text_utf8); //获取文字在指定字体和字号下的宽度和高度

double textWidth = fm[11]; //文本的宽度, 不 +1 右侧有些字母少一个像素不能显示

/** textHeight = fm[2] - fm[3] , 其实大部分情况下: fm[2](ascender) - fm[3](descender) = fm[6](maximum horizontal advance); 但很少时间也不一定!!!**/
/*
下面的这个参数不靠谱,不能使用:

fm[ 7][ box-x1]: -7.140625
fm[ 8][ box-y1]: -33554429.109375 (楷体, 32号字, 设置文字中含有汉字, 比如: 制作工具, 这里就显示一个非常大的负数!!!
fm[ 9][ box-x2]: 58.593750
fm[10][ box-y2]: 39.187500
*/
double textHeight = fm[2] - fm[3]; //fm[6];


/** 设置文字的重力位置, 也就是从哪个方向开始写, 这涉及到文字的定位坐标 **/
DrawSetGravity(dw_wand, SouthGravity); //设置 SouthGravity 后,就可以从 0,0 绘制文字。

以上是关于ImageMagick:获取一行文字的宽与高的主要内容,如果未能解决你的问题,请参考以下文章

网页中的宽与高

CSS编码练习时,设置了层和图片的宽与高,但是显示时高度被自动压缩了一半,是怎么回事呢?

unity游戏自定义分辨率 教你如何自定义

2021-10-25听课

关于ffmpeg工具的使用总结

关于2048小游戏中随机生成2与4个数的问题