CAD二次开发插入栅格图片
[CommandMethod("TESTIMAGE")] public void TSTImage() { Document doc = Application.DocumentManager.MdiActiveDocument; Editor ed = Application.DocumentManager.MdiActiveDocument.Editor; Database db = HostApplicationServices.WorkingDatabase; using (Transaction trans = doc.TransactionManager.StartTransaction()) { BlockTable bt = (BlockTable)trans.GetObject(db.BlockTableId, OpenMode.ForWrite); BlockTableRecord btr = (BlockTableRecord)trans.GetObject(bt[BlockTableRecord.ModelSpace], OpenMode.ForWrite); RasterImageDef imageDef = db.AddImageDef(trans, @"D:\用户目录\Desktop\Love\图片.png"); if (imageDef != null) { RasterImage rasterImage = new RasterImage(); rasterImage.ImageDefId = imageDef.ObjectId; ObjectId imageId = btr.AppendEntity(rasterImage); if (imageId.IsNull) throw new Autodesk.AutoCAD.Runtime.Exception(ErrorStatus.NullObjectId); trans.AddNewlyCreatedDBObject(rasterImage, true); RasterImage.EnableReactors(true); rasterImage.AssociateRasterDef(imageDef); rasterImage.Orientation = new CoordinateSystem3d(Point3d.Origin, Vector3d.XAxis, Vector3d.YAxis); } trans.Commit(); } }