Burn Method (original) (raw)

Summary

Burns the annotation objects in Container to the destination context using the existing destination rectangle and resolution (DPI).

Syntax

C#

Objective-C

C++/CLI

Java

Python

public virtual void Burn() 

public: virtual void Burn()

Example

using Leadtools.Annotations.Automation; using Leadtools.Annotations.Engine; using Leadtools.Annotations.Rendering; using Leadtools.Codecs; using Leadtools.Annotations; using Leadtools.WinForms; public void AnnRenderingEngine_BurnToRectWithDpi(/*RasterImage image*/) { // _viewer is ImageViewer _automation is working on // Get the container AnnContainer container = _automation.Container; RasterImage image = _viewer.Image; double inch = 720.0; // Add a red line object, from 1in 1in to 2in 2in AnnPolylineObject lineObj = new AnnPolylineObject(); lineObj.Points.Add(LeadPointD.Create(1 * inch, 1 * inch)); lineObj.Points.Add(LeadPointD.Create(2 * inch, 2 * inch)); lineObj.Stroke = AnnStroke.Create(AnnSolidColorBrush.Create("Red"), LeadLengthD.Create(1)); container.Children.Add(lineObj); // Add a blue on yellow rectangle from 3in 3in to 4in 4in AnnRectangleObject rectObj = new AnnRectangleObject(); rectObj.Rect = LeadRectD.Create(3 * inch, 3 * inch, 1 * inch, 1 * inch); rectObj.Stroke = AnnStroke.Create(AnnSolidColorBrush.Create("Blue"), LeadLengthD.Create(1)); rectObj.Fill = AnnSolidColorBrush.Create("Yellow"); container.Children.Add(rectObj); IAnnAutomationControl annAutomationControl = _automation.AutomationControl; RasterColor[] colors = image.GetPalette(); IntPtr hDC = Leadtools.Drawing.RasterImagePainter.CreateLeadDC(image); if (hDC != null) { using (Graphics g = Graphics.FromHdc(hDC)) { // Create a new rendering engine for this container and context AnnWinFormsRenderingEngine renderingEngine = new AnnWinFormsRenderingEngine(container, g); // Set the resolution double dpiX = g.DpiX; double dpiY = g.DpiY; double xRes = annAutomationControl.AutomationDpiX; double yRes = annAutomationControl.AutomationDpiY; // Burn it renderingEngine.BurnToRectWithDpi(LeadRectD.Empty, dpiX, dpiY, xRes, yRes); } Leadtools.Drawing.RasterImagePainter.DeleteLeadDC(hDC); } // Delete the objects we added _automation.SelectObjects(container.Children); _automation.DeleteSelectedObjects(); // Invalidate to see the burned objects _automation.Invalidate(LeadRectD.Empty); }