File size: 483 Bytes
185c878
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
import gradio as gr
import subprocess

def merge_pdfs(files):
    if not files:
        return None

    output = "merged.pdf"
    cmd = ["pdfunite"] + [f.name for f in files] + [output]
    subprocess.run(cmd, check=True)
    return output

with gr.Blocks() as demo:
    gr.Markdown("# 📄 PDF Merger (Ultra Stable)")
    pdfs = gr.File(file_types=[".pdf"], file_count="multiple")
    out = gr.File()
    btn = gr.Button("Merge")
    btn.click(merge_pdfs, pdfs, out)

demo.launch()