向下移动绘图以添加标题

如何向下移动绘图以添加标题

问题: 如何向下移动绘图以添加标题 (CADNET-980)。

提示: 为此,创建一个带有参数的 CadText 对象,将该块添加到绘图中,然后使用 UpdateSize 更新绘图的新尺寸,添加一个多线段作为绘图的框架,将多线段添加到 BlockEntities["*Model_Space"] 并再次使用 UpdateSize 更新。

示例:

using (CadImage cadImage = (CadImage)Image.Load(GetPath(fileName)))
{
CadText text = new CadText();
text.DefaultValue = "CAD Drawing";
text.TextHeight = 5;
// second alignment point is required in case text is aligned (first alignment point is ignored)
text.SecondAlignmentPoint = new Cad3DPoint(cadImage.Width / 2, cadImage.Height - text.TextHeight);
text.HorizontalJustification = 1;
text.ObjectHandle = "bebebebe";//Guid.NewGuid().ToString();
text.LayerName = "0";
text.SoftOwner = cadImage.Layouts["Model"].BlockTableRecordHandle;
cadImage.BlockEntities["*Model_Space"].AddEntity(text);
// should be called because we need to add one more entity using new size of image
cadImage.UpdateSize();
// add polyline that is a border around the drawing
CadLwPolyline lwPolyline = new CadLwPolyline();
lwPolyline.Coordinates = new List<Cad2DPoint>();
lwPolyline.Coordinates.Add(new Cad2DPoint(cadImage.MinPoint.X - 20, cadImage.MinPoint.Y - 20));
lwPolyline.Coordinates.Add(new Cad2DPoint(cadImage.MinPoint.X - 20, cadImage.MaxPoint.Y + 20));
lwPolyline.Coordinates.Add(new Cad2DPoint(cadImage.MaxPoint.X + 20, cadImage.MaxPoint.Y + 20));
lwPolyline.Coordinates.Add(new Cad2DPoint(cadImage.MaxPoint.X + 20, cadImage.MinPoint.Y - 20));
cadImage.BlockEntities["*Model_Space"].AddEntity(lwPolyline);
// should be called because adding of new entity may change size of drawing
cadImage.UpdateSize();
// remove border polyline after drawing is updated
cadImage.RemoveEntity(lwPolyline);
CadRasterizationOptions rasterizationOptions = new CadRasterizationOptions();
PdfOptions pdfOptions = new PdfOptions();
pdfOptions.VectorRasterizationOptions = rasterizationOptions;
cadImage.Save(outPath, pdfOptions);
}