Gratis JavaScript-bibliotheek voor PDF-metadatabeheer

Gratis en open source JavaScript-bibliotheek voor het beheren van metagegevens van PDF-documenten.

Wat is pdf-lib?

Pdf-lib is een gratis en open source JavaScript-bibliotheek voor het werken met PDF-documenten om bewerkingen uit te voeren zoals het maken van nieuwe PDF's vanaf nul, het wijzigen van bestaande PDF's of het lezen en bijwerken van metadata van PDF-documenten. We hebben het al gehad over de PDF-bewerkingsfuncties van pdf-lib, maar in deze review richten we ons alleen op de metadatabeheerfuncties van pdf-lib, waaronder:

    • Auteur
    • Schepper
    • Producent
    • Titel
    • Onderwerp
    • Trefwoorden
    • Taal
    • Aanmaakdatum
    • Wijzigingsdatum
  • Metagegevens bijwerken: U kunt bovenstaande metagegevens van PDF-documenten ook bijwerken met behulp van pdf-lib.
GitHub

GitHub-statistieken

Naam: pdf-lib
Taal: TypeScript
Sterren: 7.4K
Vorken: 728
Licentie: MIT License
De opslagplaats is voor het laatst bijgewerkt op 2025-04-06

Aan de slag met pdf-lib

Er zijn twee manieren om pdf-lib te installeren:

NPM-modules

U kunt npm-modules gebruiken als u npm of yarn als pakketbeheerder gebruikt:

Installeren met behulp van NPM


npm install --save pdf-lib

Installeren met behulp van Yarn


yarn add pdf-lib

UMD-modules

Als u geen pakketbeheerder gebruikt, zijn UMD-modules beschikbaar op de CDN's unpkg en jsDelivr:

Metadata van PDF lezen

We kunnen de pdf-lib bibliotheek gebruiken om metadata van PDF documenten te lezen. Er zijn veel functies zoals getAuthor, getCreator, getCreationDate etc. die toegang tot of extractie van metadata van de PDF documenten mogelijk maken zoals gedemonstreerd in het onderstaande codefragment:

// Import necessary modules from 'pdf-lib'
import { PDFDocument } from 'pdf-lib';
// Import 'fs/promises' for file system operations
import fs from 'fs/promises';
async function getMetadata(pdfDoc) {
// Get and Display the Metadata of a document
console.log("Author: ", pdfDoc.getAuthor());
console.log("Creator: ", pdfDoc.getCreator());
console.log("Creation Date: ", pdfDoc.getCreationDate());
console.log("Modification Date: ", pdfDoc.getModificationDate());
console.log("Number of pages: ", pdfDoc.getPageCount());
}
// Read a PDF Document
const existingpdf = await fs.readFile('modified-pdf.pdf');
const pdfDoc = await PDFDocument.load(existingpdf);
// Call getMetadata() to fetch metadata of a function
getMetadata(pdfDoc)
.then(() => {
// Log success message if metadata is changed successfully
console.log('Metadata Fetched Successfully');
})
.catch((error) => {
// Log an error message if an error occurs during metadata modification
console.error('Error: ', error);
});

Uitvoer

Het bovenstaande codefragment toont metagegevens van het PDF-document zoals hieronder weergegeven:

Metagegevens van PDF bewerken

We kunnen ook de pdf-lib bibliotheek gebruiken om metadata van PDF documenten te bewerken of te updaten. Net als get functies (getAuthor, getCreator etc.), biedt pdf-lib ook set functies (zoals setAuthor, setCreator etc.) om metadata van PDF bestanden te updaten. We zullen de setAuthor en setTitle functies gebruiken om de metadata van een PDF document te updaten in onderstaand codefragment voor demonstratiedoeleinden:

// Import necessary modules from 'pdf-lib'
import { PDFDocument } from 'pdf-lib';
// Import 'fs/promises' for file system operations
import fs from 'fs/promises';
// Function to set metadata of a PDF document
async function setMetadata(pdfDoc) {
// Change the Metadata of the PDF Document
// Set the author metadata
pdfDoc.setAuthor("Document Processing");
// Set the title metadata
pdfDoc.setTitle("Test Document");
// Save the modified PDF as bytes
const modifiedPdfBytes = await pdfDoc.save();
// Write the modified PDF bytes to a new file
await fs.writeFile("modified-pdf.pdf", modifiedPdfBytes);
}
// Read the PDF file as bytes
const existingpdf = await fs.readFile('documentprocessing.pdf');
// Load the PDF using pdf-lib
const pdfDoc = await PDFDocument.load(existingpdf);
// Call setMetadata() to change metadata of the loaded PDF document
setMetadata(pdfDoc)
.then(() => {
// Log success message if metadata is changed successfully
console.log('Metadata Changed Successfully');
})
.catch((error) => {
// Log an error message if an error occurs during metadata modification
console.error('Error: ', error);
});

Conclusie

JavaScript-ontwikkelaars kunnen metadata van PDF-documenten gemakkelijker lezen/extraheren en updaten met behulp van de pdf-lib-bibliotheek. De API is vrij netjes en biedt standaard set/get-functies om eigenschappen van PDF-documenten te lezen en updaten. Er zijn geen problemen waargenomen met betrekking tot metadatabeheer van PDF's tijdens ons gebruik.

Vergelijkbare Producten

 Nederlands