This sample demonstrates how to add image from canvas during PDF generation in JavaScript with BytescoutPDF.js (Bytescout PDF Generator for JavaScript).
// function that creates BytescoutPDF instance (defined in BytescoutPDF.js script which have to be included into the same page)
// then calls API methods and properties to create PDF document
// and returns created BytescoutPDF object instance
// this CreatePDF() function is called from Sample.html
function CreatePDF() {
// create BytescoutPDF object instance
var pdf = new BytescoutPDF();
// set document properties: Title, subject, keywords, author name and creator name
pdf.propertiesSet("Sample document title", "Sample subject", "keyword1, keyword 2, keyword3", "Document Author Name", "Document Creator Name");
// set page size
pdf.pageSetSize(BytescoutPDF.A4);
// set page orientation (BytescoutPDF.PORTRAIT = portrait, BytescoutPDF.LANDSCAPE = landscape)
pdf.pageSetOrientation(BytescoutPDF.PORTRAIT);
// add new page
pdf.pageAdd();
// create temporary canvas (you can also simply get existing canvas)
var canvas = document.createElement('canvas');
// set width and height
canvas.width = 320;
canvas.height = 240;
// get context from canvas (to draw on)
var context = canvas.getContext("2d");
// set white background color
context.fillStyle = "#FFFFFF";
// and fill the background with white color
context.fillRect(0, 0, 320, 240);
// draw the yellow circle
context.strokeStyle = "#000000";
context.fillStyle = "#FFFF00";
context.beginPath();
context.arc(100, 100, 50, 0, Math.PI * 2, true);
context.closePath();
context.stroke();
context.fill();
// load image from canvas into BytescoutPDF
pdf.imageLoadFromCanvas(canvas);
// place this image at given X, Y coordinates on the page
pdf.imagePlace(20, 40);
// return BytescoutPDF object instance
return pdf;
}
Generated PDF file with image from canvas (click to view full size):