cairo显示多行文本

在使用 cairo  绘制文本时,发现它不能绘制多行文本,搜索到官网 [cairo] automatic multi-line text?,它说需要使用 Pango库,这就痛苦了。

于是研究了一下cairo源码,自己实现了一下。附上函数:

#define HAVE_STDINT_H 1
#define HAVE_CONFIG_H 1
#include "cairo/cairo-private.h"
#include "cairo/cairo-compiler-private.h"
#include "cairo/cairo-error-private.h"
#include "cairo/cairo-fontconfig-private.h"
#include "cairo/cairo-scaled-font-private.h"
#include "cairo/cairoint.h"
#include "cairo/cairo-backend-private.h"


void CCairo::show_multiline_utf8(const char* utf8, int utf8_len, LPRECT lprc, const char* szFontname, int nFontSize, DWORD dtFormat, bool bold)
{
	cairo_text_extents_t extents;
	cairo_status_t status;
	cairo_glyph_t* glyphs = NULL, * last_glyph = NULL;
	cairo_text_cluster_t* c
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值