Nodemon Fixes, PdfFile cleanup

This commit is contained in:
Felix Kaspar
2023-11-14 20:22:37 +01:00
parent 02957f7757
commit 7bf100daff
8 changed files with 89 additions and 106 deletions

View File

@@ -1,5 +1,3 @@
import { PdfFile, fromPdfLib } from '../wrappers/PdfFile';
export type ImposeParamsType = {
file: any;
nup: number;

View File

@@ -1,22 +1,19 @@
import { PDFDocument } from 'pdf-lib';
import { PdfFile, convertAllToPdfLibFile, fromPdfLib } from '../wrappers/PdfFile';
import { PdfFile } from '../wrappers/PdfFile';
export type MergeParamsType = {
files: PdfFile[];
}
export async function mergePDFs(params: MergeParamsType): Promise<PdfFile> {
const pdfLibFiles = await convertAllToPdfLibFile(params.files);
const mergedPdf = await PDFDocument.create();
for (let i = 0; i < pdfLibFiles.length; i++) {
const pdfToMerge = await pdfLibFiles[i].getAsPdfLib();
for (let i = 0; i < params.files.length; i++) {
const pdfToMerge = await params.files[i].pdflibDocument;
const copiedPages = await mergedPdf.copyPages(pdfToMerge, pdfToMerge.getPageIndices());
copiedPages.forEach((page) => mergedPdf.addPage(page));
}
return fromPdfLib(mergedPdf, params.files[0].filename);
return new PdfFile(params.files.map(f => ), mergedPdf, params.files[0].filename);
};

View File

@@ -1,6 +1,6 @@
import { degrees } from 'pdf-lib';
import { PdfFile, fromPdfLib } from '../wrappers/PdfFile';
import { PdfFile } from '../wrappers/PdfFile';
export type RotateParamsType = {
file: PdfFile;
@@ -10,8 +10,7 @@ export type RotateParamsType = {
export async function rotatePages(params: RotateParamsType): Promise<PdfFile> {
const { file, rotation } = params;
const pdfDoc = await file.getAsPdfLib();
const pages = pdfDoc.getPages();
const pages = (await file.pdflibDocument).getPages();
if (Array.isArray(rotation)) {
if (rotation.length != pages.length) {
@@ -29,5 +28,5 @@ export async function rotatePages(params: RotateParamsType): Promise<PdfFile> {
});
}
return fromPdfLib(pdfDoc, file.filename);
return file;
};