浮云绘图包含绘图编辑器+绘图组件DLL+API Demo+说明文档,基于浮云绘图可以快速定制开发各类状态图、电路图、拓扑图、平面布局图等。其基础图元包括文字、图片,本文详细介绍此2类基础图元的详细绘图操作步骤,以及浮云绘图SDK开发接口定义和使用实例(浮云绘图功能已相当丰富,可以满足诸多绘图项目快速开发,如有还要特殊需求,我们可以驻场开发)。

先看看浮云绘图的几个应用场景如下所示,支持动态控制各线条、区域、文字、图片的颜色、虚实、大小、状态等属性。

1. 浮云绘图编辑器之文本图元使用与开发

文本,用于名称、解释、说明等。属性包括:内容、是否隐藏、对齐方式、字体类型、字体颜色、字号。

1.1 文本图元使用操作

文本图元绘制操作:点击左侧工具栏文本图标按钮 -> 鼠标移动到绘图区 -> 按下鼠标左键,移动鼠标,然后松开鼠标左键(完成文本图元初始绘制) -> 双击文本图元,弹出文本对话框,修改文本内容,及字体等属性,即完成文本绘制。

1.2 文本图元API和实例

有关文本图元API定义如下(以VC版为例)(完整浮云绘图SDK下载)

extern "C" __declspec(dllimport) void SetShapeText(CECanvas* canvas, CShapeElement* shape, const char* text);
extern "C" __declspec(dllimport) void GetShapeText(CShapeElement* shape, wchar_t* text);
extern "C" __declspec(dllimport) void SetTextVisible(CECanvas* canvas, CShapeElement* shape, BOOL isShow);
extern "C" __declspec(dllimport) int GetTextVisible(CShapeElement* shape);extern "C" __declspec(dllimport) void SetFontColor(CECanvas* canvas, CShapeElement* shape, int color);
extern "C" __declspec(dllimport) int GetFontColor(CShapeElement* shape);
extern "C" __declspec(dllimport) void SetFontType(CECanvas* canvas, CShapeElement* shape, const char* fntype);
extern "C" __declspec(dllimport) void GetFontType(CShapeElement* shape, wchar_t* fntype);
extern "C" __declspec(dllimport) void SetFontSize(CECanvas* canvas, CShapeElement* shape, int size);
extern "C" __declspec(dllimport) int GetFontSize(CShapeElement* shape);

文本图元API使用示例如下:

void CFYEDrawDemoVCView::OnPropText()
{// TODO: 在此添加命令处理程序代码CTextPropDlg dlg;CShapeElement* shape = GetShapeAt(m_shapeCanvas, m_iShapeSeqNum);if (shape != NULL){dlg.m_bShow = GetTextVisible(shape);wchar_t* sT = new wchar_t[200];GetShapeText(shape, sT);dlg.m_sContent = CString(sT);delete []sT;if (dlg.DoModal() == IDOK){m_iShapeSeqNum = dlg.m_iShapeID;CShapeElement* shape2 = GetShapeAt(m_shapeCanvas, m_iShapeSeqNum);if (shape2 != NULL){SetTextVisible(m_shapeCanvas, shape2, dlg.m_bShow);SetShapeText(m_shapeCanvas, shape2, dlg.m_sContent);}}}
}void CFYEDrawDemoVCView::OnPropFont()
{// TODO: 在此添加命令处理程序代码CFontPropDlg dlg;CShapeElement* shape = GetShapeAt(m_shapeCanvas, m_iShapeSeqNum);if (shape != NULL){wchar_t* sT = new wchar_t[200];GetFontType(shape, sT);dlg.m_sFontType = CString(sT);delete[]sT;dlg.m_iFontColor = GetFontColor(shape);dlg.m_iFontSize = GetFontSize(shape);if (dlg.DoModal() == IDOK){m_iShapeSeqNum = dlg.m_iShapeID;CShapeElement* shape2 = GetShapeAt(m_shapeCanvas, m_iShapeSeqNum);if (shape2 != NULL){SetFontType(m_shapeCanvas, shape2, dlg.m_sFontType);SetFontColor(m_shapeCanvas, shape2, dlg.m_iFontColor);SetFontSize(m_shapeCanvas, shape2, dlg.m_iFontSize);}}}
}

2. 浮云绘图编辑器之图片图元使用与开发

图片图元,是浮云绘图的基础图元之一,支持各种平面布局图和实体关系图。现实中个各种物体照片、漫画、手绘等都可以成本图片图元的展示,应用场景如机柜、采集盒、动物、房间、沙发、背景墙等等,并且浮云绘图的图片支持3态,比如用计算机显示器表示一个客户端,绿色表示在线、红色表示断开、灰色表示未知状态。

2.1 图片图元使用操作

图片图元绘制操作流程:点中左侧工具栏图片按钮 -> 鼠标移动到绘图区,按下鼠标左键,接着移动鼠标,然后松开鼠标(即得到一个空图的图片图元) -> 双加该图片图元,在弹出属性框中,设置1~3张图片(即完成)。可通过修改图片状态值,切换图片。

2.2 图片图元API和实例

有关图片图元API定义如下(以VC版为例)(完整浮云绘图SDK下载)

extern "C" __declspec(dllimport) int GetImageStatus(CShapeElement* shape);
extern "C" __declspec(dllimport) void SetImageStatus(CECanvas* canvas, CShapeElement* shape, int status);

图片图元API使用示例如下:

void CFYEDrawDemoVCView::OnPropImg()
{// TODO: 在此添加命令处理程序代码CImgPropDlg dlg;CShapeElement* shape = GetShapeAt(m_shapeCanvas, m_iShapeSeqNum);wchar_t* sT = new wchar_t[200];GetShapeType(shape, sT);CString sType = CString(sT);delete[]sT;if (sType != "image"){CString msg;msg.Format("当前第%d个图元不是图片图元", m_iShapeSeqNum+1);AfxMessageBox(msg);return;}if (shape != NULL){dlg.m_iShapeID = m_iShapeSeqNum;dlg.m_iImgStatus = GetImageStatus(shape);if (dlg.DoModal() == IDOK){m_iShapeSeqNum = dlg.m_iShapeID;CShapeElement* shape2 = GetShapeAt(m_shapeCanvas, m_iShapeSeqNum);if (shape2 != NULL){SetImageStatus(m_shapeCanvas, shape2, dlg.m_iImgStatus);}}}
}

文字和图片是绘图的基础,本文通过结束这2中基础图元的绘制和展示效果,以及API定义及其示例,希望可以帮到大家基于浮云绘图快速开发绘图项目源码。如果更特殊的需求,我们可以驻场定制开发。

浮云绘图编辑器之文字、图片基础图元操作及源码,用于文本描述及拓扑图、平面布局图开发相关推荐

  1. 浮云绘图编辑器之直线、方块、圆等基础图元操作和接口源码

    浮云绘图是一整套绘图软件sdk(绘图编辑器+绘图组件DLL+API Demo+说明文档),可以快速开发各类状态度.电子图图纸.流程图.平面布局图等.其中基础绘图单元就有直线.矩形方块.椭圆(含圆),本 ...

  2. QT界面免费版开源图片转文字工具程序完整版附源码

    QT界面免费版开源图片转文字工具程序完整版附源码 需求源码的朋友请留言 操作步骤如下:

  3. IOS开发基础之UI基础的团购源码完整版本

    IOS开发基础之UI基础的团购源码完整版本 // // ViewController.m // 17-团购案例 // // Created by 鲁军 on 2021/2/4. //#import & ...

  4. 资源:代码舞动动画 提供gif图片(含程序、源码、下载地址)

    资源:代码舞动动画 提供gif图片(含程序.源码.下载地址) 案例 · 教程 · 地址: 3行代码 为你的网站博客添加萌萌哒可爱二次元女动漫玩偶人物(看板娘) 抖音上爆红的美女动态代码图如何实现? 以 ...

  5. PHP响应式H5图片网盘外链系统源码 自适应PC手机端

    介绍: PHP响应式H5图片网盘外链系统源码 自适应PC手机端 支持图片违规检测 网盘与外链分享步伐,撑持一切格局文件的上传,可以天生文件外链.图片外链.音乐视频外链,天生外链同时主动天生响应的UBB ...

  6. java计算机毕业设计工作流流程编辑OA系统MyBatis+系统+LW文档+源码+调试部署

    java计算机毕业设计工作流流程编辑OA系统MyBatis+系统+LW文档+源码+调试部署 java计算机毕业设计工作流流程编辑OA系统MyBatis+系统+LW文档+源码+调试部署 本源码技术栈: ...

  7. 二维码图片生成工具C#winform源码

    二维码图片生成工具C#winform源码 源码描述: 一.源码特点 采用winform进行开发,生成二维码并保存,欢迎下载 二.功能介绍 本源码是一个可以自动生成二维码图片的小模块,可以添加自己的lo ...

  8. 图片拼图微信小程序源码_支持多模板制作和流量主

    介绍: 该款小程序支持多种流量主: 另外支持多种图形模板制作切割: 另外也支持长图合成等功能: 安装简单,新手容易上手,具体就不多说了大家自行研究吧!!!! 图片拼图微信小程序源码_支持多模板制作和流 ...

  9. 图片拼图微信小程序源码下载支持多模板制作和流量主

    该款小程序支持多种流量主 另外支持多种图形模板制作切割 另外也支持长图合成等功能 安装简单,新手容易上手,具体就不多说了大家自行研究吧! 好了下面来看看小编的测试演示图! 小程序下载地址:(10条消息 ...

最新文章

  1. Swift3.0语言教程使用编码创建和初始化字符串
  2. python 多进程 requests_python多进程(二)
  3. eclipse if代码折叠_仅需一页Java代码就能实现网页源码爬取
  4. 牛皮啊,全网独家SpringCloud Alibaba手打笔记
  5. 软件稳定性测试的测试点
  6. 浅谈OCR之Tesseract
  7. oauth基本流程和原理
  8. CSS3 实用技巧:制作三角形
  9. 串灯控制盒去掉怎么接_单双向可控硅好坏怎么判断
  10. Emacs下查词典(StarDict篇)
  11. 计算机网络按信息传输介质的性能来划分,第3章 计算机网络基础和 Internet 应用...
  12. MATLAB数据标准化处理,mapminmax、zscore、mapstd对比
  13. Hadoop对小文件的解决方案
  14. 接口implement
  15. VIN码/车架号的详解,车架号识别,VIN码识别,OCR车架号识别能带来什么
  16. 华为云--云平台部署管理架构图
  17. 图像处理——使用模板对矩阵进行中值滤波(中值滤波模板)
  18. iOS9 3DTouch、ShortcutItem、Peek And Pop技术一览
  19. ur5+moveit 3D perception功能应用
  20. 基于JAVA郑州卷烟厂库存管理系统计算机毕业设计源码+系统+mysql数据库+lw文档+部署

热门文章

  1. 六自由度方程组 matlab,采用Matlab的六自由度机器人三维运动学仿真_李庆.pdf
  2. [BUG 记录] Unable to determine the device handle for GPU 0000:05:00.0: GPU is lost. Reboot the system
  3. 全球500家最大公司及网址
  4. 雪花css样式,css雪花动画
  5. 关于道家与道教的总结
  6. Fedora安装MySQL
  7. 安卓导入自定义下载矢量图标
  8. HDU-OJ 杭电1495非常可乐
  9. [学习记录]realsence d455 +vins-fusion+px4+ego_planner下无人机的悬停与控制
  10. 一个求索者【无标题】