新手入门必看: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字体时的顺序是:

  1. 放置/注册VectorDraw library的文件夹。
  2. 放置图形的文件夹。
  3. SupportPath属性中的路径。

总结:建议在应用程序安装期间创建一个路径,如%Program Files%\ MyApplicationFolder \ SHXFonts,并放置(分发)应用程序/图纸使用的SHX字体。还要在应用程序的帮助中说明用户应该复制他在此路径中使用的SHX字体文件,并且您的应用程序应在SupportPath属性中具有上述路径。

二. 将绘图导出为BMP

问:找不到任何可以告诉我如何将图纸导出到BMP的案例。我找到了一个方法rendertographics但不知道如何使用它。

答:在一个新项目中添加一个vdFramedControl,一个图片框(这是可选的)和一个按钮和一个代码,如:

 1 VdFramedControl1.BaseControl.ActiveDocument.Open("C:\temp\EXAMPLE.dxf")
 2 VdFramedControl1.BaseControl.ActiveDocument.CommandAction.CmdSelect("ALL")
 3 Dim selset As VectorDraw.Professional.vdCollections.vdSelection
 4 selset = VdFramedControl1.BaseControl.ActiveDocument.Selections.FindName("VDRAW_PREVIOUS_SELSET")
 5 Dim a As VectorDraw.Geometry.Box|
 6 a = selset.GetBoundingBox
 7 PictureBox1.Width = 200 ' exported image will be 200x200 pixels
 8 PictureBox1.Height = 200
 9 Dim img1 As Image
10 img1 = New Bitmap(PictureBox1.Width, PictureBox1.Height)
11 Dim graph As System.Drawing.Graphics
12 graph = Graphics.FromImage(img1)
13 a.TransformBy(VdFramedControl1.BaseControl.ActiveDocument.ActiveLayOut.World2ViewMatrix)
14 VdFramedControl1.BaseControl.ActiveDocument.ActiveLayOut.RenderToGraphics(graph, a, img1.Width, img1.Height)
15 img1.Save("C:\_temp\aaaaa.bmp", System.Drawing.Imaging.ImageFormat.Bmp) 'save to disk
16 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 常见问题整理大全(二))