Как да преместите чертежа надолу, за да добавите заглавие

Проблем: Как да преместите чертежа надолу, за да добавите заглавие (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);
}