Hi Kannan,
CanvasRenderingContext2D contains this drawImage overload that lets you specify source and destination rectangles:
ctx.drawImage(image,
sx, sy, sWidth, sHeight,
dx, dy, dWidth, dHeight)
You could use that to draw cropped or scaled part of the diagram canvas on another canvas and export the latter:
var exportCanvas = document.createElement("canvas");
exportCanvas.width = 100;
exportCanvas.height = 100;
const ctx = exportCanvas.getContext("2d");
ctx.drawImage(diagramCanvas,
0, 0, 500, 500,
0, 0, 100, 100);
var dataUrl = exportCanvas.toDataURL("image/png", "");
Regards,
Slavcho
Mindfusion