Spaces:
Running
Running
Update app.py
Browse files
app.py
CHANGED
@@ -3,7 +3,17 @@ import fitz # PyMuPDF
|
|
3 |
import io
|
4 |
import zipfile
|
5 |
|
|
|
|
|
|
|
|
|
6 |
|
|
|
|
|
|
|
|
|
|
|
|
|
7 |
def split_pdf_by_pages_and_zip_in_memory(doc, dpi):
|
8 |
"""
|
9 |
Splits a PDF document into individual pages, saves each page as an image in memory,
|
@@ -75,7 +85,7 @@ def main():
|
|
75 |
del st.session_state["progress_bar"]
|
76 |
st.subheader("Download ZIP Archive")
|
77 |
zip_size = zip_data.getbuffer().nbytes
|
78 |
-
data_size =
|
79 |
create_download_link(zip_data, data_size, f"pages_1_to_{total_pages}.zip")
|
80 |
|
81 |
except Exception as e:
|
|
|
3 |
import io
|
4 |
import zipfile
|
5 |
|
6 |
+
def format_data_size(size_in_bytes):
|
7 |
+
units = ["B", "KB", "MB", "GB", "TB"]
|
8 |
+
size = size_in_bytes
|
9 |
+
unit_index = 0
|
10 |
|
11 |
+
while size >= 1024 and unit_index < len(units) - 1:
|
12 |
+
size /= 1024
|
13 |
+
unit_index += 1
|
14 |
+
|
15 |
+
return f"{size:.2f} {units[unit_index]}"
|
16 |
+
|
17 |
def split_pdf_by_pages_and_zip_in_memory(doc, dpi):
|
18 |
"""
|
19 |
Splits a PDF document into individual pages, saves each page as an image in memory,
|
|
|
85 |
del st.session_state["progress_bar"]
|
86 |
st.subheader("Download ZIP Archive")
|
87 |
zip_size = zip_data.getbuffer().nbytes
|
88 |
+
data_size = format_data_size(zip_size)
|
89 |
create_download_link(zip_data, data_size, f"pages_1_to_{total_pages}.zip")
|
90 |
|
91 |
except Exception as e:
|