#region 预览 /// <summary> /// 预览 /// </summary> private void PreviewLineSymbol() { IStyleGalleryClass pStyleGalleryClass;//以下定义style类型 pStyleGalleryClass = new LineSymbolStyleGalleryClassClass(); this.previewBox.Image = Image.FromHbitmap(PreviewSymbol(pStyleGalleryClass, this.pStyleSymbol, this.previewBox.Width, this.previewBox.Height).GetHbitmap()); } public Bitmap PreviewSymbol(IStyleGalleryClass pStyleGalleryClass, object symbolItem, int imgWidth, int imgHeight) {//获取图例Bitmap Bitmap bitmap = new Bitmap(imgWidth, imgHeight); Graphics graphics = Graphics.FromImage(bitmap); tagRECT rect = new tagRECT(); rect.right = bitmap.Width; rect.bottom = bitmap.Height; System.IntPtr hdc = graphics.GetHdc(); pStyleGalleryClass.Preview(symbolItem, hdc.ToInt32(), ref rect); graphics.ReleaseHdc(hdc); graphics.Dispose(); return bitmap; } #endregion