qt能不能直接用代码去修改svg格式的,,,,,大神请指导一下

trustguan 2013-09-01 09:41:42
svg是用XMl去解释的,但是我用文本格式打开它的时候,里面的顺序是不规范的,不像xml文件那样,所以在Qt读不了数据来,如下:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="282.222mm" height="190.853mm"
viewBox="0 0 800 541"
xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.2" baseProfile="tiny">
<title>Qt Svg Document</title>
<desc>Generated with Qt</desc>
<defs>
</defs>
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >

<g fill="#ff0000" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
font-family="宋体" font-size="9" font-weight="400" font-style="normal"
>
<path vector-effect="non-scaling-stroke" fill-rule="evenodd" d="M144,115 L417,115 L417,300 L144,300 L144,115"/>
</g>
</g>
</svg>


其实我是想做个小型的绘图软件,能够捕捉到每个图形的相应信息和坐标,不知道大神们有什么好的意见呢,谢谢
...全文
317 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
一去丶二三里 2013-12-10
  • 打赏
  • 举报
回复
引用 楼主 trustguan 的回复:
svg是用XMl去解释的,但是我用文本格式打开它的时候,里面的顺序是不规范的,不像xml文件那样,所以在Qt读不了数据来,如下:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="282.222mm" height="190.853mm"
 viewBox="0 0 800 541"
 xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"  version="1.2" baseProfile="tiny">
<title>Qt Svg Document</title>
<desc>Generated with Qt</desc>
<defs>
</defs>
<g fill="none" stroke="black" stroke-width="1" fill-rule="evenodd" stroke-linecap="square" stroke-linejoin="bevel" >

<g fill="#ff0000" fill-opacity="1" stroke="#000000" stroke-opacity="1" stroke-width="1" stroke-linecap="square" stroke-linejoin="bevel" transform="matrix(1,0,0,1,0,0)"
font-family="宋体" font-size="9" font-weight="400" font-style="normal" 
>
<path vector-effect="non-scaling-stroke" fill-rule="evenodd" d="M144,115 L417,115 L417,300 L144,300 L144,115"/>
</g>
</g>
</svg>
其实我是想做个小型的绘图软件,能够捕捉到每个图形的相应信息和坐标,不知道大神们有什么好的意见呢,谢谢
不知道你做出来没有! 我想有一个本办法就是加载svg文件! 需要修改的时候使用XML解析文件,然后修改里面的内容!
Draw软件所达到的功能 开发绘制直线(Line)功能:两点画线(1)、角度画线(2)、XY画线(3)、画垂线(4)、点距画线(5)、相切圆(弧)画线(6) 开发绘制圆(Cercle)功能:半径圆心画圆(1)、三点画圆(2)、点距画圆(3)、半径圆心值画圆(4)、相切直线/圆(弧)画圆(5)、相切两线画圆(6) 开发绘制多边形(Polygon)功能:画正多边形(1)、画矩形(2),正多边形包括三角形、正方形、五边形、六边形、七边形、八边形 开发绘制弧(Arc)功能:弧心半径值起始角度弧度画弧线(1)、弧心半径弧度值画弧线(2)、相切图形(直线,圆,弧)画弧线(3) 开发绘制文本(Text)功能:绘制文本(1)、字体大小(2) 界面及文本字体风格设置:普通(1),粗体(2),斜体(3),斜体加粗(4),一共四种样式。 保存及打开状态菜单:保存当前绘制环境或打开已存在的绘制环境。 保存制图:根据当前水平和垂直滚动条动态生成所绘制图形,保存成图片格式(bmp,jpg(默认),png,tiff,gif,pcx,tga,exif,svg,psd,cdr,pcd,ufo,eps,ai,raw,WFM) 清除全部:清除屏幕中全部图形,不包括集合中内容。 颜色选择器/背景颜色选择器:调出Java中已封装的颜色选择器(JColorChooser类的createDialog(略)方法,用于设置线条颜色/背景颜色)。 线条宽度:弹出输入对话框,用于设置线条宽度。 灵敏度调节:弹出输入对话框,用于设置采集点和图形的灵敏程度。 撤销上一步/前进下一步:用于当操作错误,撤销此步操作/当撤销错误,回到撤销之前操作。 刷新:用于刷新当前绘图。

16,216

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧