Projelere Dön

PDF TOOL BOX

PythonDesktopOCR

PDF yonetimi icin masaustu uygulamasi. Birlestirme, bolme, sayfa silme, toplu sifreleme, OCR ve metadata duzenleme.

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:

  1. Depoyu klonlayın:
    git clone https://github.com/furkandalyan/PDF-TOOL-BOX.git
    
  2. Gerekli bağımlılıkları yükleyin:
    pip install -r requirements.txt
    
  3. Tesseract OCR'ı sisteminize kurun ve yolunu belirtin.
  4. Başlatın:
    python main.py