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

PDF izveide un rediģēšana, izmantojot atvērtā pirmkoda JavaScript API

Atvērtā pirmkoda JavaScript bibliotēka PDF failu izveidei un modificēšanai, lapu pievienošanai un kopēšanai un attēlu ievietošanai PDF failā, izmantojot JavaScript.

PDF-Lib ir atvērtā pirmkoda JavaScript bibliotēka, kas ļauj programmatūras profesionāļiem izstrādāt jaudīgas lietojumprogrammas darbam ar PDF failiem. Bibliotēka ir ļoti bagāta ar funkcijām un paredzēta darbam jebkurā modernā JavaScript izpildlaikā. Tajā ir iekļauts atbalsts jaunu PDF failu izveidei, esošo PDF dokumentu rediģēšanai, veidlapu izveidei, PDF lappušu pievienošanai vai noņemšanai, lapu kopēšanai starp PDF failiem, teksta un attēlu zīmēšanai, teksta platuma un augstuma mērīšanai, dokumentu sadalīšanai un apvienošanai, lasīšanai un apvienošanai. iestatīt PDF metadatus, Draw Vector Graphics un daudz ko citu.

Bibliotēka ir rakstīta ar Typescript un kompilēta tīrā JavaScript formātā bez citām atkarībām. Viens no lieliskajiem PDF-Lib bibliotēkas izveides mērķiem bija novērst JavaScript ekosistēmas stabila atbalsta trūkumu PDF rediģēšanai vai modificēšanai. Ir dažādas labas JavaScript bibliotēkas, kas atbalsta PDF failu izveidi, taču tikai dažas no tām ietvēra spēcīgu PDF modifikācijas atbalstu. PDF-Lib ir iekļāvis pilnīgu PDF modifikācijas atbalstu, kā arī darbu visās JavaScript vidēs (ne tikai mezglā vai pārlūkprogrammā).

Previous Next

Darba sākšana ar PDF-Lib

Ieteicamais un vienkāršākais veids, kā sākt un instalēt PDF-Lib, ir, izmantojot npm, kā arī pie dzijas. Tālāk ir norādīta komanda.

instalējiet PDF-Lib, izmantojot npm

 npm install --save pdf-lib 

instalējiet PDF-Lib, izmantojot dziju

 yarn add pdf-lib 

PDF dokumentu izveide un modificēšana, izmantojot JavaScript

Atvērtā koda PDF-Lib bibliotēkā ir iekļauta pilnīga funkcionalitāte PDF dokumentu izveidei, kā arī modificēšanai. Programmatūras izstrādātāji var no jauna izveidot jaunu PDF dokumentu, izmantojot tikai dažas JavaScript koda rindiņas savās lietojumprogrammās. Pēc izveides izstrādātāji var ievietot tekstu, zīmēt attēlus vai vektorgrafikas, iegult savus fontus, kopēt un iegult lapas no citiem PDF failiem, lietot formatējumu un stilus pēc savas izvēles un daudz ko citu.

Kā izveidot PDF dokumentus, izmantojot 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ējiet lapas starp PDF dokumentiem, izmantojot JS bibliotēku

Bieži vien ir ļoti izdevīgi izmantot esošu lapu, nevis izveidot jaunu lapu PDF dokumentā. Atvērtā pirmkoda PDF-Lib bibliotēka ļauj datorprogrammētājiem kopēt lapas no dažādiem PDF dokumentiem un pievienot tos saviem vēlamajiem PDF dokumentiem bez jebkādām ārējām atkarībām. Vispirms ir jāielādē abi PDF faili, pēc tam varat izmantot komandu copyPages(), lai kopētu vēlamās lapas, un pēc tam izmantot komandu addPage(), lai pievienotu lapu vajadzīgajā vietā PDF dokumentos.

Pievienojiet tekstu esošajam PDF failam, izmantojot JavaScript

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()

Parsēt un lasīt metadatus no PDF failiem

PDF-Lib bibliotēka pilnībā atbalsta piekļuvi PDF dokumentu metadatiem un to lasīšanu. Metadati ir ļoti svarīga PDF dokumentu daļa, un tajos ir iekļauta ļoti nozīmīga informācija par PDF failu un tā saturu, piemēram, nosaukums, tēma, autors, informācija par autortiesībām, veidotājs, izveides vai modifikācijas datums utt. Izmantojot PDF-Lib bibliotēkas programmatūras izstrādātājus, var viegli parsēt un izvilkt metadatus no PDF dokumenta, izmantojot tikai dažas JavaScript koda rindiņas.

Pievienojiet attēlu PDF failam, izmantojot JavaScript


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()

Pievienojiet pielikumus PDF failam, izmantojot JavaScript API

Dažreiz mums ir jāsniedz detalizētāka informācija par PDF failu, lai mēs varētu šim failam pievienot citu failu. Tagad šī faila priekšrocība būs tāda, ka pielikums tiks pārvietots kopā ar PDF failu, ja pārvietosit to uz citu vietu. Atvērtā pirmkoda PDF-Lib bibliotēka sniedz programmatūras izstrādātājiem iespēju pievienot citus failus saviem PDF dokumentiem savās JavaScript lietotnēs. PDF failam ir iespējams pievienot dažāda veida failus, piemēram, Microsoft Word, Excel, attēlus, video vai pat citus PDF failus.

Pievienojiet pielikumus PDF failam, izmantojot 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()
 Latviski