Teken naar beneden verplaatsen om titel toe te voegen

Hoe teken naar beneden verplaatsen om titel toe te voegen

Probleem: Hoe teken naar beneden verplaatsen om titel toe te voegen (CADNET-980).

Tips: Om dit te doen, maak een CadText-object aan met parameters, voeg deze blok toe aan de tekening, werk vervolgens de tekening bij met de nieuwe afmetingen met UpdateSize, voeg een polyline toe die een kader rond de tekening vormt, voeg de polyline toe aan BlockEntities["*Model_Space"] en werk opnieuw bij met UpdateSize.

Voorbeeld:

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);
}