react--pdf-lib给PDF添加水印兼容IE11
import { degrees, PDFDocument, rgb, StandardFonts } from \'pdf-lib\';
export async function modifyPdf(url, texts) {
const text = `${texts}`;
const existingPdfBytes = await fetch(url).then(res => res.arrayBuffer());
const pdfDoc = await PDFDocument.load(existingPdfBytes);
const helveticaFont = await pdfDoc.embedFont(StandardFonts.Helvetica);
const page = pdfDoc.getPages();
const firstPage = page[0];
const { height } = firstPage.getSize();
page.forEach(item => {
item.drawText(text, {
x: 10,
y: height - 100,
size: 30,
font: helveticaFont,
color: rgb(0.82, 0.86, 0.89),
rotate: degrees(45),
});
item.drawText(text, {
x: 480,
y: height - 65,
size: 30,
font: helveticaFont,
color: rgb(0.82, 0.86, 0.89),
rotate: degrees(45),
});
item.drawText(text, {
x: 15,
y: height - 200,
size: 30,
font: helveticaFont,
color: rgb(0.82, 0.86, 0.89),
rotate: degrees(45),
});
});
if (window.navigator && window.navigator.msSaveOrOpenBlob) {
const blob = new Blob([await pdfDoc.save()], { type: \'application/pdf\' });
window.navigator.msSaveBlob(blob,\'预览.pdf\');
} else {
const pdfUrl = URL.createObjectURL(
new Blob([await pdfDoc.save()], { type: \'application/pdf\' }),
);
window.open(pdfUrl, \'_blank\');
}
}
以上是 react--pdf-lib给PDF添加水印兼容IE11 的全部内容, 来源链接: utcz.com/z/382798.html