PDFMerge / app.py
Kiran
Update app.py
c7865c7 verified
Raw History Blame Contribute Delete
946 Bytes
import gradio as gr
import PyPDF2
import os
def merge_pdfs(pdf_files):
merger = PyPDF2.PdfMerger()
for pdf_file in pdf_files:
merger.append(pdf_file.name)
output_path = "merged.pdf"
merger.write(output_path)
merger.close()
return output_path
def update_preview(pdf_files):
return "\n".join([f.name for f in pdf_files])
with gr.Blocks() as iface:
gr.Markdown("# PDF Merger")
gr.Markdown("Upload multiple PDF files to merge them into a single PDF.")
pdf_files = gr.File(file_count="multiple", file_types=[".pdf"], label="Upload PDFs")
preview = gr.Textbox(label="Files to be merged (in order)", lines=5, interactive=False)
merge_button = gr.Button("Merge PDFs")
output = gr.File(label="Merged PDF")
pdf_files.change(update_preview, inputs=[pdf_files], outputs=[preview])
merge_button.click(merge_pdfs, inputs=[pdf_files], outputs=[output])
iface.launch()