在开发过程中,我们会遇到图像的处理及转换,包括将图像转为PDF,下面代码可实现,将image.PixelMap对象转为PDF
export function pixelMapObjToPdf(pixelMap: image.PixelMap, pdfPath: string): boolean {
let context = getContext() as common.UIAbilityContext;
let dir: string = context.tempDir
let pngPath: string = dir + "/temp.png";
pixelMapSaveToSandBoxFile(pixelMap,pngPath); // 可参考 https://developer.huawei.com/consumer/cn/blog/topic/03190538585433120
// 创建 PDF 文档对象
const pdfDoc = new pdfService.PdfDocument();
// 创建PDF页面(匹配图片尺寸)
pdfDoc.createDocument( pixelMap.getImageInfoSync().size.width, pixelMap.getImageInfoSync().size.height)
pdfDoc.insertBlankPage(0, pixelMap.getImageInfoSync().size.width, pixelMap.getImageInfoSync().size.height);
// 创建一页 PDF(宽高同 PNG 图像)
const page = pdfDoc.getPage(0);
page.addImageObject(pngPath, 0, 0, page.getWidth(), page.getHeight());
const result: boolean = pdfDoc.saveDocument(pdfPath);
pdfDoc.releaseDocument();
return result;
}调用代码示例
pixelMapObjToPdf(this.pixelMap,pdfPath)
















