找回密码
 立即注册
收起左侧

QPainterPath填充问题

5
回复
5257
查看
[复制链接]

尚未签到

来源: 2014-7-14 10:04:25 显示全部楼层 |阅读模式

马上注册,查看详细内容!注册请先查看:注册须知

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
moveTo()隐含的开始一个新subpath ,并且闭合前一个subpath。
绘制路径时如果多次使用moveTo(),最后使用painter.fillPath
填充路径,只能填充每个subpath,不能将整个路径填充?
没有方法可以填充整个路径?
回复

使用道具 举报

尚未签到

2014-7-14 10:05:03 显示全部楼层
基于Qt的FreeType字体轮廓解析
http://blog.csdn.net/wang__sid/article/details/11601761

绘制字体轮廓,最后希望能填充整个轮廓
多次使用moveTo()只能填充每个subpath,不能填充整个轮廓

方法一:将moveTo去掉或者改成arcMoveTo ,绘制是错误的
方法二:使用
QPainterPathStroker  pathStroke;
QPainterPath path1=pathStroke.createStroke(path);
填充path1,也不能正确填充
方法三:
QPainterPath OuterPath;
        OuterPath.setFillRule(Qt::WindingFill);
        OuterPath.addRect(0, 0, 400,400);
       QPainterPath fillPath =OuterPath.intersected(path);
填充fillPath ,也不能正确填充

研究了好几天了,盼解决方案
回复 支持 反对

使用道具 举报

尚未签到

2014-7-14 10:05:46 显示全部楼层
有没有方法可以代替moveTo , 但并不开始一个新subpath 闭合前一个subpath ?

采用OpenGL绘制能否解决这个问题?
回复 支持 反对

使用道具 举报

尚未签到

2014-7-14 13:00:56 显示全部楼层
D:\222.jpg
希望能把字母J中的所有内部区域全部填充成一种或多种颜色。
现在的问题是:多次使用moveTo()只能填充每个subpath(图片中字母J的多种颜色的线),不能把字母J轮廓内的所有区域全部填充
回复 支持 反对

使用道具 举报

尚未签到

2014-7-14 13:01:32 显示全部楼层
希望能把字母J中的所有内部区域全部填充成一种或多种颜色。
现在的问题是:多次使用moveTo()只能填充每个subpath(图片中字母J的多种颜色的线),不能把字母J轮廓内的所有区域全部填充

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

尚未签到

2014-7-14 13:11:16 显示全部楼层
内部全部填充,如下图

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

公告
可以关注我们的微信公众号yafeilinux_friends获取最新动态,或者加入QQ会员群进行交流:190741849、186601429(已满) 我知道了