VectorDraw Developer Framework(VDF)是一個用於應用程序可視化的圖形引擎庫。有了VDF提供的功能,您能夠輕鬆地建立、編輯、管理、輸出、輸入和打印2D和3D圖形文件。該庫還支持許多矢量和柵格輸入和輸出格式,包括本地PDF和SVG導出。javascript
【VectorDraw Developer Framework最新版下載可登陸慧都網進行免費下載】java
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等等)中。web
【VectorDraw web library (javascript)最新版下載可登陸慧都網進行免費下載】canvas
一. 文本,字體和SHX字體瀏覽器
問:文本,字體和SHX字體?字體
答:字體和SHX字體的通常概念:VectorDraw libraries使用兩種字體來顯示文本:TTF和SHX字體。一些圖形已經建立,一些文本對象(vdText對象)使用一些Textstyles(vdTextStyle對象),它使用SHX字體來顯示文本特徵。這些SHX字體不像每一個系統都有的TTF字體(系統字體)(如Arial TTF字體)。因此SHX字體必須與圖紙一塊兒分發。spa
所以,在個人機器中,我能夠建立一個包含一些使用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字體時的順序是:
總結:建議在應用程序安裝期間建立一個路徑,如%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