Files
devin-ai-integration[bot] 1a58874c32 Update TypeScript to version 5.8.2 (#802)
* Update TypeScript to version 5.8.2 and fix type compatibility issues

Co-Authored-By: Kyohei Fukuda <kyouhei.fukuda0729@gmail.com>

* Update package-lock.json for TypeScript 5.8.2

Co-Authored-By: Kyohei Fukuda <kyouhei.fukuda0729@gmail.com>

* Fix TypeScript errors in generator package

Co-Authored-By: Kyohei Fukuda <kyouhei.fukuda0729@gmail.com>

* Update moduleResolution to esnext in all tsconfig.esm.json files and fix type errors in generator package

Co-Authored-By: Kyohei Fukuda <kyouhei.fukuda0729@gmail.com>

* Update moduleResolution to bundler in all tsconfig.esm.json files

Co-Authored-By: Kyohei Fukuda <kyouhei.fukuda0729@gmail.com>

---------

Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Co-authored-by: Kyohei Fukuda <kyouhei.fukuda0729@gmail.com>
2025-03-04 18:15:28 +09:00

26 lines
822 B
TypeScript

import { PDFDocument } from '@pdfme/pdf-lib';
import { pdf2img } from '@pdfme/converter';
export const createTestPDF = async (pageCount: number): Promise<Uint8Array> => {
const pdfDoc = await PDFDocument.create();
for (let i = 0; i < pageCount; i++) {
const page = pdfDoc.addPage([500, 500]);
page.drawText(`Page ${i + 1}`, {
x: 50,
y: 450,
size: 20,
});
}
return pdfDoc.save();
};
export const pdfToImages = async (pdf: ArrayBuffer | Uint8Array): Promise<Buffer[]> => {
const arrayBuffers = await pdf2img(pdf, { imageType: 'png' });
return arrayBuffers.map((buf) => Buffer.from(new Uint8Array(buf)));
};
export const getPDFPageCount = async (pdf: ArrayBuffer | Uint8Array): Promise<number> => {
const pdfDoc = await PDFDocument.load(pdf);
return pdfDoc.getPageCount();
};