Insert Picture Example (C#)

This example shows how to insert a picture in a drawing document.

//--------------------------------------------------------------
// Preconditions:
// 1. Create a C# Windows console project.
// 2. Copy and paste this example into the C# IDE.
// 3. Add a reference to:
//    install_dir\APISDK\tlb\DraftSight.Interop.dsAutomation.dll.
// 4. Add references to System and System.Windows.Forms.
// 5. Change the path and file name of the picture to insert.
//    NOTE: The picture must be a PNG file.
// 6. Start DraftSight and open a drawing.
// 7. Start debugging the project.
//
// Postconditions: A message box pops up when the specified picture
// is inserted in the drawing document.
//----------------------------------------------------------------
using DraftSight.Interop.dsAutomation;
using System;
using System.Runtime.InteropServices;
using System.Windows.Forms;
static class Module1
{
    public static void Main()
    {
        DraftSight.Interop.dsAutomation.Application dsApp;
        Document dsDoc = default(Document);
        Model dsModel = default(Model);
        SketchManager dsSketchManager = default(SketchManager);
        ReferenceImage dsPicture = default(ReferenceImage);
        string imageFileName;
        //Connect to DraftSight
        dsApp = (DraftSight.Interop.dsAutomation.Application)Marshal.GetActiveObject("DraftSight.Application");
	dsApp.AbortRunningCommand(); // abort any command currently running in DraftSight to avoid nested commands
        //Get active document
        dsDoc = dsApp.GetActiveDocument();
        if (dsDoc != null)
        {
            //Get model space
            dsModel = dsDoc.GetModel();
            //Get Sketch Manager
            dsSketchManager = dsModel.GetSketchManager();
            //Replace picture's path and file 
            //name with yours
            imageFileName = "c:\\test\\note.png";
            //Insert picture
            dsPicture = dsSketchManager.InsertPicture(imageFileName, 0, 0, 0, 1, 0);
            if (dsPicture == null)
            {
                MessageBox.Show(imageFileName + " file was not found.");
            }
            else
            {
                MessageBox.Show("A picture was inserted in the drawing.");
            }
        }
        else
        {
            MessageBox.Show("There are no open documents in DraftSight.");
        }
    }
}