Proje Özeti
PDF TOOL BOX, PDF dosyalarını birleştirmek, bölmek, şifrelemek, döndürmek ve metin çıkarmak gibi işlemleri kolaylaştıran, Python ve Tkinter tabanlı modern bir masaüstü uygulamasıdır. Kullanıcı dostu arayüzü ve güçlü özellikleri ile PDF yönetimini basitleştirir.
Bu proje, dosya işlemleri, GUI tasarımı ve harici kütüphanelerin (PyPDF2, Tesseract OCR) entegrasyonu konularında pratik yapmak amacıyla geliştirilmiştir.
Teknik Mimari ve Özellikler
Kapsamlı PDF Araçları
- Birleştirme (Merge): Birden fazla PDF dosyasını tek bir dosyada birleştirir.
- Bölme (Split): PDF dosyalarını sayfa aralıklarına veya yer imlerine göre böler.
- Sayfa Silme: İstenmeyen sayfaları PDF'den kaldırır.
- Döndürme (Rotate): Sayfaları 90, 180 veya 270 derece döndürür.
Güvenlik ve Şifreleme
- Toplu Şifreleme: Birden fazla PDF dosyasını aynı anda şifreleyerek güvenliğini sağlar.
- Şifre Kaldırma: Şifreli PDF dosyalarının şifresini kaldırır (şifre biliniyorsa).
Metin İşleme (OCR)
- OCR Desteği: Tesseract OCR motoru kullanılarak taranmış PDF dosyalarından metin çıkarılır.
- Metadata Düzenleme: PDF dosyasının başlık, yazar, konu gibi meta verilerini düzenler.
Modern Arayüz
- Koyu Tema (Dark Mode): Göz yormayan modern bir arayüz sunar.
- Undo/Redo: Yapılan işlemleri geri alma ve yineleme özelliği ile hata yapma korkusunu ortadan kaldırır.
Kullanılan Teknolojiler
| Teknoloji | Rolü | |-----------|----------------| | Python 3.x | Ana geliştirme dili | | Tkinter | Grafiksel kullanıcı arayüzü (GUI) | | PyPDF2 | PDF işlemleri (birleştirme, bölme, şifreleme) | | Tesseract OCR | Görüntüden metin çıkarma | | Pillow (PIL) | Görüntü işleme |
Tech Stack
- Python 3.x
- Tkinter (GUI)
- PyPDF2
- Tesseract OCR
Technical Architecture
UI -> PDF Engine -> OCR/Metadata -> File System
Challenges & Lessons Learned
- Buyuk PDF dosyalarinda performans ve bellek yonetimi
- OCR dogrulugu ve dil ayarlari
- Metadata koruma ve dosya butunlugu
Testing / Logging / Monitoring
- Tests: Farkli PDF tipleriyle manuel kontroller
- Logging: Islem loglari ve hata kayitlari
- Monitoring: Yerel uygulama, izleme gerektirmez
Kurulum
Projeyi yerel ortamda çalıştırmak için:
- Depoyu klonlayın:
git clone https://github.com/furkandalyan/PDF-TOOL-BOX.git - Gerekli bağımlılıkları yükleyin:
pip install -r requirements.txt - Tesseract OCR'ı sisteminize kurun ve yolunu belirtin.
- Başlatın:
python main.py