新手入门必看:VectorDraw 常见问题整理大全(二)
VectorDraw Developer Framework(VDF)是一个用于应用程序可视化的图形引擎库。有了VDF提供的功能,您可以轻松地创建、编辑、管理、输出、输入和打印2D和3D图形文件。该库还支持许多矢量和栅格输入和输出格式,包括本地PDF和SVG导出。
【VectorDraw Developer Framework最新版下载可登录慧都网进行免费下载】
VectorDraw web library (javascript)是一个矢量图形库。VectorDraw web library (javascript)不仅能打开CAD图纸,而且能显示任何支持HTML5标准平台上的通用矢量对象,如Windows,安卓,iOS和Linux。无需任何安装,VectorDraw web library (javascript)就可以运行在任何支持canvas标签和Javascript的主流浏览器(Chrome, Firefox, Safari, Opera, Dolphin, Boat等等)中。
【VectorDraw web library (javascript)最新版下载可登录慧都网进行免费下载】
一. 文本,字体和SHX字体
问:文本,字体和SHX字体?
答:字体和SHX字体的一般概念:VectorDraw libraries使用两种字体来显示文本:TTF和SHX字体。一些图形已经创建,一些文本对象(vdText对象)使用一些Textstyles(vdTextStyle对象),它使用SHX字体来显示文本特征。这些SHX字体不像每个系统都有的TTF字体(系统字体)(如Arial TTF字体)。所以SHX字体必须与图纸一起分发。
因此,在我的机器中,我可以创建一个包含一些使用MySHXfont.SHX字体文件的文本的图形。如果我分发这个图纸,我也应该分发MySHXfont.SHX字体文件,以使图形显示“正确”(正如我设计的那样)。
VDF在哪里找到SHX字体文件:
您应该记住的另一件事是SHX字体是“路径”相对的。SHX字体不是TTF的“系统”字体,因此为了加载它(VectorDraw或其他程序),必须指定SHX字体的路径。在VectorDraw中,这是通过SupportPath属性完成的(有关更多信息,请参阅我们的帮助文档)。
SupportPath属性指定在使用插图,文件打开,图像附加,外部参照,字体文件(SHX)和vdUtility的FindFile方法等图形方法时,VectorDraw搜索文件的目录(路径)。SupportPath可以用分号< ; >分隔路径,例如:c:/;c:/temp;c:/Program Files/VectorDraw;
VectorDraw搜索SHX字体时的顺序是:
- 放置/注册VectorDraw library的文件夹。
- 放置图形的文件夹。
- SupportPath属性中的路径。
总结:建议在应用程序安装期间创建一个路径,如%Program Files%\ MyApplicationFolder \ SHXFonts,并放置(分发)应用程序/图纸使用的SHX字体。还要在应用程序的帮助中说明用户应该复制他在此路径中使用的SHX字体文件,并且您的应用程序应在SupportPath属性中具有上述路径。
二. 将绘图导出为BMP
问:找不到任何可以告诉我如何将图纸导出到BMP的案例。我找到了一个方法rendertographics但不知道如何使用它。
答:在一个新项目中添加一个vdFramedControl,一个图片框(这是可选的)和一个按钮和一个代码,如:
VdFramedControl1.BaseControl.ActiveDocument.Open("C:\temp\EXAMPLE.dxf")
VdFramedControl1.BaseControl.ActiveDocument.CommandAction.CmdSelect("ALL")
Dim selset As VectorDraw.Professional.vdCollections.vdSelection
selset = VdFramedControl1.BaseControl.ActiveDocument.Selections.FindName("VDRAW_PREVIOUS_SELSET")
Dim a As VectorDraw.Geometry.Box|
a = selset.GetBoundingBox
PictureBox1.Width = ' exported image will be 200x200 pixels
PictureBox1.Height =
Dim img1 As Image
img1 = New Bitmap(PictureBox1.Width, PictureBox1.Height)
Dim graph As System.Drawing.Graphics
graph = Graphics.FromImage(img1)
a.TransformBy(VdFramedControl1.BaseControl.ActiveDocument.ActiveLayOut.World2ViewMatrix)
VdFramedControl1.BaseControl.ActiveDocument.ActiveLayOut.RenderToGraphics(graph, a, img1.Width, img1.Height)
img1.Save("C:\_temp\aaaaa.bmp", System.Drawing.Imaging.ImageFormat.Bmp) 'save to disk
PictureBox1.Image = img1 ' show in form's Picture box
三. 资源全球化
问:在6005中添加资源全球化。
答:版本6 .NET组件可以使用任何语言进行本地化。基本上,本地化的单词是提示消息,网格属性名称以及表单。 如果客户想要本地化他的VectorDraw组件可以与我们联系,我们将提供以下内容:
1)vdRes.txt
是一个英文文本文档,包含所有提示消息以及属性列表中显示的所有属性名称。在那里,他可以用任何语言翻译这些消息。
2)vdFormsRes.dll,vdFormsRes项目
vdFormsRes是一个包含所有形式的vectordraw的项目,也是英文版。在此项目中,所有标签和按钮都可以进行本地化。也有人可以改变表格的外观。
对于vdRay中的全球化
我们将提供生成vdRayResources.dll的vdRayResources项目。客户可以更改表单中的字符串并构建它(在发布时不调试)。生成的vdRayResources.dll文件应该复制到与vdRay.dll文件相同的文件夹中,或者复制到可执行文件的同一文件夹中(由于Dev机器中的vdRay.dll在GAC中,因此在Dev。机器中推荐)。然后在使用vdRay组件的项目中,在应用程序的Form_Load中添加以下代码行:vdRay.vdRayGlobals.ResourcesDllName =“vdRayResources.dll”;
限制:
1.属性网格中的常量不能更改(例如,PlFlagOPEN,折线的标志属性的PlFlagCLOSE常量无法定位)。
2.您无法在vdFormsRes上添加新按钮,标签。
添加了新方法来获取/设置commands.txt,menu.txt,vdres.txt的资源目录
VectorDraw.Serialize.Activator.GetResourcesDirectory
您可以将资源目录设置如下
VectorDraw.Serialize.Activator.SetResourcesDirectory(@"C:\Temp\");
VectorDraw.Serialize.GlobalizedDictionary.Dictionary = new VectorDraw.Serialize.GlobalizedDictionary (@"C:\Temp\vdres.txt");
此目录由应用程序设置(加载应用程序时),组件在此目录中搜索资源文件Commands.txt,Menu.txt vdres.txt。
此外在vdres.txt中,如果第一个名字表示属性名称,所述第二值是“ - ”,则属性从属性网格隐藏。如果你想使用vdFormsRes.dll来加载你自己的表单,你应该设置这个dll所在的目录在GlobalizedFormsDirectory的vdres.txt中,在文本文档的开头有完整的路径和dll名称。设置目录如下:GlobalizedFormsDirectory ^ C:\ TEMP \ vdFormsRes.dll
新手入门必看:VectorDraw 常见问题整理大全(二)的更多相关文章
- Liunx新手入门必看
安装CentOS(Linux的一个常用发行版本,互联网公司经常使用这个发行版)用到的软件: VMware_workstation_full_12.5.2.exe 虚拟机软件,虚拟机由这个软件安装.管理 ...
- 新手入门必看:VectorDraw 常见问题整理大全(一)
VectorDraw Developer Framework(VDF)是一个用于应用程序可视化的图形引擎库.有了VDF提供的功能,您可以轻松地创建.编辑.管理.输出.输入和打印2D和3D图形文件.该库 ...
- 1.16 Linux该如何学习(新手入门必看)
本节旨在介绍对于初学者如何学习 Linux 的建议.如果你已经确定对 Linux 产生了兴趣,那么接下来我们介绍一下学习 Linux 的方法. 如何去学习 学习大多类似庖丁解牛,对事物的认识一般都是由 ...
- vue入门笔记(新手入门必看)
一.什么是Vue? 1. vue为我们提供了构建用户界面的渐进式框架,让我们不再去操作dom元素,直接对数据进行操作,让程序员不再浪费时间和精力在操作dom元素上,解放了双手,程序员只需要关心业 ...
- Node笔记(新手入门必看)
. 初识Node.js 1.1 Node.js是什么 Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. ...
- Django新手入门必看
pip install django==2.1.7 (现在Django3.0出来,推荐大家可以使用一下Django3.0) pip list查看
- Java编程学习知识点分享 入门必看
Java编程学习知识点分享 入门必看 阿尔法颜色组成(alpha color component):颜色组成用来描述颜色的透明度或不透明度.阿尔法组成越高,颜色越不透明. API:应用编程接口.针对软 ...
- STM32环境搭建/学习观点/自学方法 入门必看
文章转自armfly开发板V4软件开发手册,分享学习~ 今天有幸看到armfly的开发板软件开发手册,开头的基础知识,真的很有用,还好有看到,一切都不迟,感悟很多,摘抄部分,学习分享~ 关于开发环境的 ...
- PHP高级程序员必看知识点:目录大全(不定期更新)
面试题系列: 分享一波腾讯PHP面试题 2019年PHP最新面试题(含答案) Redis 高级面试题 学会这些还怕进不了大厂? 阿里面试官三年经验PHP程序员知识点汇总,学会你就是下一个阿里人! ph ...
随机推荐
- XCode保存问题
1. 确认下证书是不是开发证书,如果是发布证书就会出现这样的提示. 2. 证书失效了,去开发者中心重新生成一个. 3. 包标识符不与描述文件包含的包标识符不一致,按照它的提示换一下就好了,最好不要点 ...
- Mybatis书写
Mybatis设置主键和自增 方法1: <insert id="insert" parameterType="Person" useGeneratedKe ...
- [b0020] python 归纳 (六)_模块变量作用域
test_module2.py: # -*- coding: utf-8 -*-"""测试 模块变量的作用域 总结:1 其他模块的变量,在当前模块的任何地方,包括函数都可 ...
- mysql判断是否包含某个字符的方法和修改表中指定字段
用locate 是最快的,like 最慢.position一般实战例子:select * from historydatawhere locate('0',opennum) and locate('1 ...
- [视频教程] 如何在docker环境下的纯净ubuntu系统中安装最新版nginx
视频地址: https://www.bilibili.com/video/av68984490/ 笔记: 1.拉取ubuntu镜像并运行 docker pull ubuntudocker run -i ...
- 遗传算法求解旅行商(TSP)问题 -- python
参考资料: 遗传算法解决TSP旅行商问题(附:Python实现) 遗传算法详解(GA)(个人觉得很形象,很适合初学者) from itertools import permutations impor ...
- java 内存日志分析
GC日志开头的“[GC”和“[Full GC”说明了这次垃圾收集的停顿类型, 而不是用来区分新生代GC还是老年代GC的. 如果有“Full”, 说明这次GC是发生了Stop-The-World的, 例 ...
- SQL Server关系的创建
如果两个表的相关列都是主键或具有唯一约束,创建的就是一对一关系. 如果只有一列具有主键或唯一约束,则创建的时一对多关系 关联字段的字符类型必须相同. 1. 一对一关系 USE [Howie] crea ...
- golang基础之第一个go程序
编写 Hello World 创建文件 hello.go,不写入任何内容.按照如下的命令尝试进行编译 $ go run hello.go 将会打印出如下错误: package main: hello. ...
- 大话设计模式Python实现-原型模式
原型模式(Prototype Pattern):用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象 一个原型模式的简单demo: #!/usr/bin/env python # -*- c ...