Crear, Editar Convertir PDF a Imágenes a través de Python API
API gratuita de Python para crear, editar y convertir PDF a imágenes y viceversa. Combinar/dividir y convertir PDF a texto, rotar/recortar/recortar PDF.
PDFsuite es una biblioteca Python muy útil que ofrece completa funcionalidad relacionada con PDF creación y gestión de documentos. La biblioteca es muy estable y se puede ejecutar fácilmente en MacOS (Of X). PDFsuite es muy fácil de usar y ofrece a los usuarios la capacidad de gestionar sus PDF archivos y todo lo que podrían querer hacer a un PDF es sólo un clic de distancia.
La biblioteca es muy rica en funciones y ha incluido varias características importantes relacionadas con el manejo de PDF documentos, como la conversión de PDF documentos a PDF, fusionando o dividiendo PDF documentos, convirtiendo imágenes a PDF, PDF discos Los guiones PDFsuite son fuentes abiertas son completamente libres de uso en cualquier tipo de proyecto y pueden adaptarse de cualquier manera.
Comenzando con PDFsuite
Para ejecutar PDFsuite primero necesita instalar pitón 3 y la biblioteca de pyobjc, y después en la Terminal, escriba el siguiente comando y presione Regreso.
Instalar Pyobjc vía pipa
pip3 install pyobjc
También es posible instalar la biblioteca manualmente; descargue los archivos de la versión más reciente directamente desde el repositorio de GitHub.
Convertir PDF en imagen Otros formatos
El PDFsuite ha incorporado la completa funcionalidad para convertir PDF documentos a varios formatos de archivos de imagen. Proporciona NG, JPEG, Diff y otros formatos de archivos de imagen populares. También es posible crear una imagen de Batman de cada página de los PDF documentos proporcionados con facilidad. Una vez que el proceso esté completo debes asignar un nombre separado a cada archivo y guardarlo en el disco. También apoya la modificación de la resolución, la transparencia y otros parámetros. También es posible convertir PDF archivos a texto otros formatos de archivo.
Combine múltiples PDF archivos usando Scripts Python
¿Ha estado alguna vez en una situación en la que se requiere combinar PDF documentos diferentes para crear un nuevo archivo PDF? Las organizaciones requieren a menudo la fusión de PDF archivos en un único documento. La biblioteca PDFsuite facilita a sus usuarios combinar múltiples PDF documentos en uno solo con un par de líneas de código Python. También añade un cuadro de entrada de contenidos para cada archivo componente. La biblioteca también soporta repartir PDF documentos grandes en aplicaciones más pequeñas dentro de Python.
Múltiple millas por Python API
def merge(filename):
writeContext = None
shortName = os.path.splitext(filename)[0]
outFilename = shortName + "+wm.pdf"
metaDict = getDocInfo(filename)
writeContext = createOutputContextWithPath(outFilename, metaDict)
readPDF = createPDFDocumentWithPath(filename)
mergePDF = createPDFDocumentWithPath(watermark)
if writeContext != None and readPDF != None:
numPages = Quartz.CGPDFDocumentGetNumberOfPages(readPDF)
for pageNum in range(1, numPages + 1):
page = Quartz.CGPDFDocumentGetPage(readPDF, pageNum)
mergepage = Quartz.CGPDFDocumentGetPage(mergePDF, 1)
if page:
mediaBox = Quartz.CGPDFPageGetBoxRect(page, Quartz.kCGPDFMediaBox)
if Quartz.CGRectIsEmpty(mediaBox):
mediaBox = None
Quartz.CGContextBeginPage(writeContext, mediaBox)
Quartz.CGContextSetBlendMode(writeContext, Quartz.kCGBlendModeOverlay)
Quartz.CGContextDrawPDFPage(writeContext, page)
Quartz.CGContextDrawPDFPage(writeContext, mergepage)
Quartz.CGContextEndPage(writeContext)
Quartz.CGPDFContextClose(writeContext)
del writeContext
else:
print ("A valid input file and output file must be supplied.")
sys.exit(1)
if __name__ == "__main__":
for filename in sys.argv[1:]:
merge(filename)
Convertir PDF archivos en el archivo de texto a través de Python
La biblioteca PDFsuite fuente abierta ha incluido varias características importantes para la conversión de PDF documentos a numerosos formatos de archivo de soporte. Una característica importante es convertir el contenido de texto de un archivo PDF en un archivo de texto externo y guardarlo en el lugar de su elección. También es posible guardar cada página de los PDF documentos como un archivo separado y guardarlo con un nombre diferente.
Convertir PDF Documentos en texto Archivos a través de Python API
import os, sys
from Quartz import PDFDocument
from CoreFoundation import (NSURL, NSString)
# Can't seem to import this constant, so manually creating it.
NSUTF8StringEncoding = 4
def main():
for filename in sys.argv[1:]:
shortName = os.path.splitext(filename)[0]
outputfile = shortName+" text.txt"
pdfURL = NSURL.fileURLWithPath_(filename)
pdfDoc = PDFDocument.alloc().initWithURL_(pdfURL)
if pdfDoc :
pdfString = NSString.stringWithString_(pdfDoc.string())
pdfString.writeToFile_atomically_encoding_error_(outputfile, True, NSUTF8StringEncoding, None)
if __name__ == "__main__":
main()
Rotación, Trim, Cultivo PDFs o Páginas en aplicaciones Python
La biblioteca PDFsuite ha incluido varias funcionalidades importantes para manipular fácilmente PDF archivos. Permite a los programadores rotar, recortar, cultivar, tintar, marcar agua, escalar y subir PDF documentos dentro de su propia aplicación Python. Ha proporcionado dos maneras de rotar un archivo de PDF páginas o completo. El primero es crear un nuevo contexto de PDF años, transformar gráficamente cada página del original y guardar el archivo. En segundo lugar, sólo necesitas ajustar el parámetro de rotación» en cada página y eso es todo.
Cómo Trim PDF Archivos a través de Python API
import sys
import os
from Quartz import PDFDocument, kPDFDisplayBoxMediaBox, kPDFDisplayBoxTrimBox, CGRectEqualToRect
from CoreFoundation import NSURL
mediabox = kPDFDisplayBoxMediaBox
trimbox = kPDFDisplayBoxTrimBox
def trimPDF(filename):
hasBeenChanged = False
# filename = filename.decode('utf-8')
shortName = os.path.splitext(filename)[0]
outFilename = shortName + " TPS.pdf"
pdfURL = NSURL.fileURLWithPath_(filename)
pdfDoc = PDFDocument.alloc().initWithURL_(pdfURL)
if pdfDoc:
pages = pdfDoc.pageCount()
for p in range(0, pages):
page = pdfDoc.pageAtIndex_(p)
mediaBoxSize = page.boundsForBox_(mediabox)
trimBoxSize = page.boundsForBox_(trimbox)
if not CGRectEqualToRect(mediaBoxSize, trimBoxSize):
page.setBounds_forBox_(trimBoxSize, mediabox)
hasBeenChanged = True
if hasBeenChanged:
pdfDoc.writeToFile_(outFilename)
if __name__ == '__main__':
for filename in sys.argv[1:]:
trimPDF(filename)