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