Atvērtā pirmkoda Python bibliotēka PDF failu konvertēšanai
Bezmaksas Python API ļauj izstrādātājiem eksportēt, pagriezt, sapludināt un savienot PDF failus, izvilkt datus un elementus no PDF failiem.
pdfrw ir atvērtā pirmkoda Python bibliotēka, kas programmatūras izstrādātājiem ļauj lasīt un rakstīt PDF failus, neinstalējot ārēju īpašu programmatūru. pdfrw programmēšanas bibliotēka ir ļoti vienkāršilietojama, un avota kods ir labi dokumentēts, ļoti vienkāršs un viegli saprotams. Bibliotēkā ir iekļauts atbilstošs unikoda atbalsts teksta virknēm PDF failos, kā arī ātrākais Python PDF parsētājs.
pdfrw bibliotēkā ir iekļauts atbalsts vairākām svarīgām PDF operācijām, piemēram, PDF failu apvienošanai, metadatu modificēšanai, vairāku PDF failu savienošanai kopā, attēlu izvilkšanai, PDF drukāšanai, PDF lappušu pagriešanai, jauna PDF faila izveidei, ūdenszīmes PDF attēla pievienošanai un daudzām citām darbībām.
.
Darba sākšana ar pdfrw
pdfrw nepieciešama Python 2.6, 2.7, 3.3, 3.4, 3.5 un 3.6. Varat instalēt pdfrw, izmantojot pip. Lūdzu, izmantojiet šo komandu, lai to instalētu.
Instalējiet pdfrw, izmantojot pip
python -m pip install pdfrw
Izveidojiet PDF dokumentus, izmantojot Python bibliotēku
pdfrw bibliotēka nodrošina programmatūras izstrādātājiem iespēju izveidot PDF dokumentus savās Python lietojumprogrammās, izmantojot tikai dažas koda rindas. Bibliotēka nodrošina arī atbalstu esošo PDF failu piekļuvei un modificēšanai. Esošajā PDF failā varat viegli ievietot jaunas lapas, kā arī grafikas komponentus vai teksta elementus. pdfrw bibliotēka nodrošina atbalstu, lai atrastu lapas PDF failos, kurus lasāt, un rakstītu lappušu kopu atpakaļ jaunā PDF failā.
Izveidojiet un mainiet PDF dokumentus, izmantojot Python
// PDF Documents Creation
import sys
import os
from pdfrw import PdfReader, PdfWriter
inpfn, = sys.argv[1:]
outfn = 'alter.' + os.path.basename(inpfn)
trailer = PdfReader(inpfn)
trailer.Info.Title = 'My New Title Goes Here'
PdfWriter(outfn, trailer=trailer).write()
PDF failu lasīšana, izmantojot Python
pdfrw bibliotēka ļauj programmatūras izstrādātājiem viegli piekļūt un lasīt dažādām PDF dokumentu daļām Python lietojumprogrammās. Tas nodrošina ērtu piekļuvi visam PDF dokumentam. Bibliotēka atbalsta faila informācijas, lieluma un daudz ko citu izgūšanu. Tas izveido īpašu atribūtu ar nosaukumu lapas, kas ļauj lietotājiem uzskaitīt visas PDF dokumenta lapas. Tas ļauj iegūt dokumenta informācijas objektu, ko varat izmantot, lai izvilktu tādu informāciju kā autors, nosaukums utt.
Piekļūstiet un lasiet PDF failus, izmantojot Python
// Reading PDF Files
from pdfrw import pdfreader
def get_pdf_info(path):
pdf = pdfreader(path)
print(pdf.keys())
print(pdf.info)
print(pdf.root.keys())
print('pdf has {} pages'.format(len(pdf.pages)))
if __name__ == '__main__':
get_pdf_info('w9.pdf')
Metadatu pievienošana vai modificēšana
pdfrw ļauj programmatūras izstrādātājiem pievienot vai modificēt PDF failu metadatus savās Python lietojumprogrammās. Varat mainīt vienu PDF failā esošo metadatu vienumu, ierakstīt rezultātu jaunā PDF failā, kā arī iekļaut vairākus failus un tos savienot pēc tam, kad izvades PDF failam ir pievienoti daži bezjēdzīgi metadati.
Pārveidojiet PDF metadatus, izmantojot Python
// Modifying PDF Metadata
import sys
import os
from pdfrw import PdfReader, PdfWriter
inpfn, = sys.argv[1:]
outfn = 'alter.' + os.path.basename(inpfn)
trailer = PdfReader(inpfn)
trailer.Info.Title = 'My New Title Goes Here'
PdfWriter(outfn, trailer=trailer).write()
PDF dokumentu sadalīšana
pdfrw ļauj programmatūras izstrādātājiem programmatiski sadalīt PDF dokumentu dokumentus savās lietojumprogrammās. Lietotājs var pieprasīt izvilkt noteiktu PDF grāmatas daļu vai sadalīt to vairākos PDF failos, nevis saglabāt tos vienā failā. Ar pdfrw bibliotēku tas ir ļoti vienkārši, jums vienkārši jānorāda ievades PDF faila ceļš, izņemamo lapu skaits un izvades ceļš.
Sadaliet PDF failu vairākos PDF failos, izmantojot Python
// Splitting PDF file into multiple pdfs
from pdfrw import pdfreader, pdfwriter
def split(path, number_of_pages, output):
pdf_obj = pdfreader(path)
total_pages = len(pdf_obj.pages)
writer = pdfwriter()
for page in range(number_of_pages):
if page <= total_pages:
writer.addpage(pdf_obj.pages[page])
writer.write(output)
if __name__ == '__main__':
split('reportlab-sample.pdf', 10, 'subset.pdf')