Skip to content

ParDF Release 1.5.0

Choose a tag to compare

@word-sys word-sys released this 09 May 18:20
· 246 commits to main since this release
b32237a

ParDF 1.5.0 Çıktı!

  • Hata Düzeltmeleri ve Kararlılık:
    • Yeni GNOME sistemlerinde (örn. GNOME 46+) karşılaşılan segmentation fault
      hatası, PDF sayfa oluşturma mantığı yeniden düzenlenerek çözüldü.
      Elle Cairo yüzeyi oluşturma (numpy ile) yerine GdkPixbuf ve Gdk.Cairo
      kullanımına geçilerek yeni GTK/Cairo sürümleriyle uyumluluk ve
      kararlılık artırıldı. (Kapatılan Hata: #B2E2SEC1)
    • Belirli sistemlerde veya bazı PDF özellikleriyle karşılaşılan çeşitli
      PyMuPDF doc.save() hataları düzeltildi:
      • Orijinal dosya yoluna kaydederken "save to original must be incremental"
        hatasını önlemek için incremental=True kullanılması sağlandı.
      • Artımlı kaydetme sırasında "Can't do incremental writes with garbage collection"
        hatasını çözmek için çöp toplama (garbage=0) devre dışı bırakıldı.
      • Artımlı kaydetme sırasında "Can't do incremental writes when
        changing encryption" hatasını düzeltmek için orijinal belge
        şifrelemesinin (encryption=fitz.PDF_ENCRYPT_KEEP) korunması sağlandı.
    • Eski GTK4 sürümlerinde (örn. GNOME 42) diyaloglarla ilgili GTK4 API
      değişikliklerinden kaynaklanan AttributeError hataları giderildi:
      • Adw.MessageDialog, Gtk.MessageDialog ile değiştirildi.
      • Gtk.MessageDialog metin ayarı, kaldırılan format_secondary_text veya
        set_secondary_text gibi metodlar yerine kurucu parametreleri
        (text ve secondary_text) kullanacak şekilde düzeltildi.
      • Diyalog engelleme döngüsündeki kaldırılmış GTK4 fonksiyonları
        Gtk.events_pending() ve Gtk.main_iteration(),
        GLib.MainContext.default().iteration(True) ile değiştirildi.
    • Bir düzenleme işlemi tamamlandıktan sonra metin seçim vurgusunun
      (yuvarlak köşeli dikdörtgen) hatalı bir şekilde kalması sorunu çözüldü.
      self.selected_text'in güvenilir bir şekilde temizlenmesi ve arayüzün
      güncellenmesi sağlandı.
    • Yeni metin eklerken on_pdf_view_pressed içinde baseline_y_unzoomed ve
      font_pdf_base_category_from_combo için oluşan NameError düzeltildi.
    • Yazı Tipi Yönetimi ve Arayüz:
      • Uygulama başlangıcında tüm sistemdeki TTF/OTF yazı tiplerini keşfetmek
        için eşzamansız (asynchronous) sistem geneli yazı tipi taraması eklendi.
      • Araç çubuğundaki Yazı Tipi ComboBox'ı artık sabit kodlanmış liste yerine
        taranan sistem yazı tipi aileleriyle dinamik olarak dolduruluyor.
      • EditableText modeli, PDF metinlerinden yazı tipi adlarını daha iyi
        ayrıştırmak ve sistem yazı tipleriyle daha iyi eşleşme için normalize
        edilmiş bir font_family_base, is_bold ve is_italic durumu
        türetmek üzere iyileştirildi.
      • pdf_handler.apply_text_edit fonksiyonu, sistemde bulunursa belirli
        stildeki yazı tipini (örn. "DejaVu Sans Bold") gömmeyi deneyecek,
        bulunamazsa genel bir Unicode TTF'ye, en son olarak da Base14 yazı
        tiplerine geri dönecek şekilde geliştirildi.
      • Araç çubuğunun yazı tipi ComboBox'ı, kalın ve italik düğmeleri artık
        PDF'ten seçilen metnin özelliklerini doğru bir şekilde yansıtıyor.
      • "Metin Ekle" aracıyla eklenen yeni metinler artık, eğer varsa, varsayılan
        olarak bir "Sans" ailesi yazı tipini veya sistem listesindeki ilk yazı
        tipini kullanmaya çalışırken, kullanıcının araç çubuğundaki boyut, renk,
        kalın ve italik ayarlarını da dikkate alıyor.
      • Yazı tipi taraması tamamlanmadan ve varsayılan yazı tipi belirlenmeden önce
        Unicode yazı tipi eksikliğiyle ilgili "Yazı Tipi Uyarısı" diyalogunun
        erken görünmesi sorunu çözüldü.
      • _update_text_format_controls içindeki yazı tipi adı eşleştirme mantığı,
        ComboBox'ta aktif öğeyi ayarlarken boşluk farklarını (örn. "DejaVuSans"
        vs "DejaVu Sans") ele alacak şekilde düzeltildi.
    • Debian Paketlemesi:
      • Uygulama ikonu eklendi ve doğru şekilde kurulması sağlandı.
      • (Derleme komutunda değişiklik yok, ancak paket içeriği güncellendi)