AGG第三十五课 gsv_text 渲染ASCII字符

发布时间:2020-06-28 03:59:20 作者:fengyuzaitu
来源:网络 阅读:539

代码

    agg::rendering_buffer &rbuf = rbuf_window();

    agg::pixfmt_bgr24 pixf(rbuf);


    typedef agg::renderer_base<agg::pixfmt_bgr24> renderer_base_type;

    renderer_base_type renb(pixf);


    typedef agg::renderer_scanline_bin_solid<renderer_base_type> renderder_scanline_type;

    renderder_scanline_type rensl(renb);


    agg::rasterizer_scanline_aa<> ras;

    agg::scanline_u8 sl;

    ras.reset();

    renb.clear(agg::rgba8(255,255,255));


    agg::gsv_text txt;

    agg::conv_stroke<agg::gsv_text> txtStroke(txt);

    txtStroke.width(3);

    txtStroke.line_cap(agg::square_cap);


    txt.flip(true);//Windows下坐标轴是反转的

    txt.size(20);//文字的尺寸

    txt.line_space(10);//gsv_text能够处理\n换行,设置每一行之间的间距

    txt.space(10);//字符之间的间距

    txt.start_point(100, 300);//文字的起始位置,实际上是有偏差的,需要进行微调

    txt.text("http://fengyuzaitu.blog.51cto.com\nhttp://fengyuzaitu.blog.51cto.com");

    ras.add_path(txtStroke);

    agg::render_scanlines_aa_solid(ras,sl,renb,agg::rgba8(255, 0, 0));

    ras.reset();


注意:

1 只支持渲染ASCII字符

2 只能够横向字符的渲染


推荐阅读:
  1. AGG第四十五课 性能优化
  2. AGG第四十一课 AGG和GDI渲染字体大小对比

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

text agg gsv

上一篇:vuex的理解与使用

下一篇:redis集群安装

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》