1. produkty
  2.   PDF
  3.   JavaScript
  4.   PDF-Lib
 
  

Vytváření a úpravy PDF prostřednictvím Open Source JavaScript API

Open Source JavaScript knihovna pro tvorbu a úpravu PDF souborů, přidávat a kopírovat stránky a vložit obrázky do PDF přes JavaScript.

PDF-Lib je open source JavaScriptová knihovna, která umožňuje softwarovým profesionálům vyvíjet výkonné aplikace pro práci se soubory PDF. Knihovna je velmi bohatá na funkce a je navržena tak, aby fungovala v jakémkoli moderním běhovém prostředí JavaScriptu. Zahrnuje podporu pro vytváření nových souborů PDF, úpravu stávajících dokumentů PDF, vytváření formulářů, přidávání nebo odebírání stránek PDF, kopírování stránek mezi soubory PDF, kreslení textu a obrázků, měření šířky a výšky textu, rozdělování a spojování dokumentů, čtení a nastavit metadata PDF, kreslení vektorové grafiky a mnoho dalších.

Knihovna je uvedena v Typescript a sestavena do čisté JavaScript bez dalších závislostí. Jeden velký účel vytvoření knihovny PDF-Lib bylo řešit nedostatek JavaScript ekosystému robustní podpory pro úpravu PDF nebo úpravu. Existují různé dobré JavaScript knihovny, které podporují tvorbu PDF souborů, ale velmi málo součástí silné podpory pro PDF modifikaci. PDF-Lib obsahuje kompletní podporu pro PDF modifikaci a práci ve všech JavaScript prostředích (nejen Node nebo Prohlížeč).

Previous Next

Začínáme s DF-Lib

Doporučená a nejjednodušší způsob, jak začít a nainstalovat DF-Lib je přes num, stejně jako na přízi, níže je příkaz.

instalace DF-Lib přes num

 npm install --save pdf-lib 

instalace DF-Lib přes příze

 yarn add pdf-lib 

PDF Dokumenty Tvorba a úprava prostřednictvím JavaScript

Open source PDF-Lib knihovna obsahuje kompletní funkcionalitu pro tvorbu dokumentů PDF a úpravu. Vývojáři softwaru mohou vytvořit nový PDF dokument od nuly s pouhým několika řádky JavaScript kódu uvnitř vlastních aplikací. Po vytvoření vývojářů lze vložit text, kreslit obrázky nebo vektorovou grafiku, vložit své fonty, kopírovat a vložit stránky z jiných PDFs, aplikovat formátování a styly jejich výběru a mnohem více.

Jak vytvořit PDF dokumentů pomocí JavaScript

import { PDFDocument, StandardFonts, rgb } from 'pdf-lib'
// Create a new PDFDocument
const pdfDoc = await PDFDocument.create()
// Embed the Times Roman font
const timesRomanFont = await pdfDoc.embedFont(StandardFonts.TimesRoman)
// Add a blank page to the document
const page = pdfDoc.addPage()
// Get the width and height of the page
const { width, height } = page.getSize()
// Draw a string of text toward the top of the page
const fontSize = 30
page.drawText('Creating PDFs in JavaScript is awesome!', {
  x: 50,
  y: height - 4 * fontSize,
  size: fontSize,
  font: timesRomanFont,
  color: rgb(0, 0.53, 0.71),
})
// Serialize the PDFDocument to bytes (a Uint8Array)
const pdfBytes = await pdfDoc.save()

Kopírování stránek mezi PDF dokumenty prostřednictvím knihovny S

Často je velmi výhodné použít existující stránku namísto vytváření nové stránky uvnitř dokumentu PDF. Open source knihovna PDF-Lib umožňuje počítačovým programátorům kopírovat stránky z různých dokumentů PDF a přidávat je do požadovaných dokumentů PDF bez jakýchkoli externích závislostí. Nejprve musíte načíst oba soubory PDF, poté můžete pomocí příkazu copyPages() zkopírovat požadované stránky a poté pomocí příkazu addPage() přidat stránku na požadované místo v dokumentech PDF.

Přidejte text do existujícího PDF pomocí JavaScriptu

import { PDFDocument } from 'pdf-lib'
// Create a new PDFDocument
const pdfDoc = await PDFDocument.create()
const firstDonorPdfBytes = ...
const secondDonorPdfBytes = ...
// Load a PDFDocument from each of the existing PDFs
const firstDonorPdfDoc = await PDFDocument.load(firstDonorPdfBytes)
const secondDonorPdfDoc = await PDFDocument.load(secondDonorPdfBytes)
// Copy the 1st page from the first donor document, and
// the 743rd page from the second donor document
const [firstDonorPage] = await pdfDoc.copyPages(firstDonorPdfDoc, [0])
const [secondDonorPage] = await pdfDoc.copyPages(secondDonorPdfDoc, [742])
// Add the first copied page
pdfDoc.addPage(firstDonorPage)
// Insert the second copied page to index 0, so it will be the
// first page in `pdfDoc`
pdfDoc.insertPage(0, secondDonorPage)
// Serialize the PDFDocument to bytes (a Uint8Array)
const pdfBytes = await pdfDoc.save()

Parke & Přečtěte si Metadata z PDF souborů

Knihovna PDF-Lib plně podporuje přístup a čtení metadat dokumentů PDF. Metadata jsou velmi důležitou součástí dokumentů PDF a obsahují velmi důležité informace o PDF a jeho obsahu, jako je název, předmět, autor, informace o autorských právech, tvůrce, datum vytvoření nebo úpravy a tak dále. Vývojáři softwaru knihovny PDF-Lib mohou snadno analyzovat a extrahovat metadata z dokumentu PDF pomocí pouhých několika řádků kódu JavaScript.

Přidejte obrázek do PDF pomocí JavaScriptu


import { PDFDocument, StandardFonts } from 'pdf-lib'
// Create a new PDFDocument
const pdfDoc = await PDFDocument.create()
// Embed the Times Roman font
const timesRomanFont = await pdfDoc.embedFont(StandardFonts.TimesRoman)
// Add a page and draw some text on it
const page = pdfDoc.addPage([500, 600])
page.setFont(timesRomanFont)
page.drawText('The Life of an Egg', { x: 60, y: 500, size: 50 })
page.drawText('An Epic Tale of Woe', { x: 125, y: 460, size: 25 })
// Set all available metadata fields on the PDFDocument. Note that these fields
// are visible in the "Document Properties" section of most PDF readers.
pdfDoc.setTitle('🥚 The Life of an Egg 🍳')
pdfDoc.setAuthor('Humpty Dumpty')
pdfDoc.setSubject('📘 An Epic Tale of Woe 📖')
pdfDoc.setKeywords(['eggs', 'wall', 'fall', 'king', 'horses', 'men'])
pdfDoc.setProducer('PDF App 9000 🤖')
pdfDoc.setCreator('pdf-lib (https://github.com/Hopding/pdf-lib)')
pdfDoc.setCreationDate(new Date('2018-06-24T01:58:37.228Z'))
pdfDoc.setModificationDate(new Date('2019-12-21T07:00:11.000Z'))
// Serialize the PDFDocument to bytes (a Uint8Array)
const pdfBytes = await pdfDoc.save()

Přidat přílohy do PDF přes JavaScript API

Někdy potřebujeme poskytnout podrobnější informace o souboru PDF, abychom k tomuto souboru mohli připojit další soubor. Nyní bude výhodou tohoto souboru to, že příloha bude cestovat s PDF, pokud jej přesunete na jiné místo. Knihovna PDF-Lib s otevřeným zdrojovým kódem dává vývojářům softwaru možnost připojovat další soubory k dokumentům PDF v rámci jejich aplikací JavaScript. K PDF je možné připojit různé typy souborů, jako je Microsoft Word, Excel, obrázky, video nebo dokonce další PDF.

Přidat přílohy do PDF pomocí JavaScript

const jpgAttachmentBytes = ...
const pdfAttachmentBytes = ...
// Create a new PDFDocument
const pdfDoc = await PDFDocument.create()
// Add the JPG attachment
await pdfDoc.attach(jpgAttachmentBytes, 'cat_riding_unicorn.jpg', {
  mimeType: 'image/jpeg',
  creationDate: new Date('2019/12/01'),
  modificationDate: new Date('2020/04/19'),
})
// Add the PDF attachment
await pdfDoc.attach(pdfAttachmentBytes, 'us_constitution.pdf', {
  mimeType: 'application/pdf',
  creationDate: new Date('1787/09/17'),
  modificationDate: new Date('1992/05/07'),
})
// Add a page with some text
const page = pdfDoc.addPage();
page.drawText('This PDF has two attachments', { x: 135, y: 415 })
// Serialize the PDFDocument to bytes (a Uint8Array)
const pdfBytes = await pdfDoc.save()
 Čeština