Spaces:
Sleeping
Sleeping
| import streamlit as st | |
| from main import convert_pdf_to_webp, convert_webp_to_pdf, convert_images_to_webp, Percentage, filig | |
| import os | |
| def main(): | |
| st.markdown( | |
| """ | |
| <style> | |
| .stApp { | |
| direction: rtl; | |
| text-align: right; | |
| } | |
| </style> | |
| """, | |
| unsafe_allow_html=True | |
| ) | |
| st.title("تبدیل فایلها") | |
| st.write("فایل های PDF تا 80 درصد حجم کمتر!") | |
| option = st.sidebar.selectbox("انتخاب عملیات", ("تبدیل تصاویر به PDF کم حجم", "کاهش حجم PDF")) | |
| if option == "تبدیل تصاویر به PDF کم حجم": | |
| st.subheader("تبدیل تصاویر به PDF کم حجم") | |
| uploaded_files = st.file_uploader("تصاویر خود را آپلود کنید", type=["png", "jpg", "jpeg", "bmp", "gif"], accept_multiple_files=True) | |
| if uploaded_files: | |
| image_paths = [] | |
| kol = 0 | |
| for uploaded_file in uploaded_files: | |
| image_path = os.path.join("temp", uploaded_file.name) | |
| kol += uploaded_file.size | |
| with open(image_path, "wb") as f: | |
| f.write(uploaded_file.getbuffer()) | |
| image_paths.append(image_path) | |
| if st.button("تبدیل به PDF کم حجم"): | |
| convert_images_to_webp(image_paths) | |
| output_pdf = "output.pdf" | |
| convert_webp_to_pdf(output_pdf) | |
| with open(output_pdf, "rb") as f: | |
| st.download_button("دانلود PDF", f, file_name=output_pdf) | |
| dar = Percentage(kol, os.path.getsize(output_pdf)) | |
| st.success(f"حجم PDF نسبت به حجم تصاویر {dar} کاهش یافته است!") | |
| elif option == "کاهش حجم PDF": | |
| st.subheader("کاهش حجم PDF") | |
| uploaded_file = st.file_uploader("فایل PDF خود را آپلود کنید", type=["pdf"], accept_multiple_files=False) | |
| if uploaded_file: | |
| pdf_path = os.path.join("temp", uploaded_file.name) | |
| with open(pdf_path, "wb") as f: | |
| f.write(uploaded_file.getbuffer()) | |
| if st.button("کاهش حجم PDF"): | |
| convert_pdf_to_webp(pdf_path) | |
| output_pdf = "output_converted.pdf" | |
| convert_webp_to_pdf(output_pdf) | |
| with open(output_pdf, "rb") as f: | |
| st.download_button("دانلود PDF", f, file_name=output_pdf) | |
| dar = Percentage(uploaded_file.size, os.path.getsize(output_pdf)) | |
| st.success(f"حجم pdf {dar} کاهش یافت!") | |
| if __name__ == "__main__": | |
| if not os.path.exists('temp'): | |
| os.makedirs('temp') | |
| main() | |