Başlığı Eklemek İçin Çizimi Aşağı Taşıma

Başlığı Eklemek İçin Çizimi Aşağı Taşıma

Sorun: Çizimi aşağı taşımak için başlık ekleme (CADNET-980).

İpuçları: Bunu yapmak için, parametrelerle bir CadText nesnesi oluşturun, bu bloğu çizime ekleyin, ardından yeni boyutlarla çizimi UpdateSize ile güncelleyin, çizimin etrafında bir çerçeve olarak bir poligon ekleyin, poligonu BlockEntities["*Model_Space"]’e ekleyin ve tekrar UpdateSize ile güncelleyin.

Örnek:

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