GroupDocs.Signature for Python v26.10 sürümünün Ekim 2026 itibarıyla yayınlandığını duyurmaktan mutluluk duyuyoruz. Bu büyük sürüm, temel GroupDocs.Signature motorunu 25.12’den 26.9’a yükseltiyor ve gömülü .NET çalışma zamanını .NET Core 3.1’den .NET 10.0.12’ye taşıyor. Python tarzı geri aramalar (preview akışları, logger, veri şifreleme ve özel imza hash desteği) ekliyor, Python 3.14 ile tam uyumluluk sağlıyor ve Linux üzerindeki kritik import sorunlarını çözüyor. Bu sürüm iki ana özellik, beş iyileştirme ve iki hata düzeltmesi içeriyor.

Bu sürümde yenilikler

  • [Feature] Python fonksiyonlarını sayfa ve imza önizleme geri aramaları olarak kabul eder (SIGNATUREPYTHON-21)
  • [Feature] Python nesnelerini ILogger, IDataEncryption ve ICustomSignHash uygulamaları olarak kabul eder (SIGNATUREPYTHON-22)
  • [Feature] Python 3.14 desteği eklenmiştir (SIGNATUREPYTHON-23)
  • [Enhancement] GroupDocs.Signature motoru 25.12’den 26.9’a güncellendi (SIGNATUREPYTHON-24)
  • [Enhancement] Gömülü .NET çalışma zamanı .NET Core 3.1’den .NET 10.0.12’ye güncellendi (SIGNATUREPYTHON-25)
  • [Enhancement] RuntimeError yerine GroupDocsSignatureException, IncorrectPasswordException ve PasswordRequiredException yükseltilir (SIGNATUREPYTHON-26)
  • [Enhancement] Bir sınıfın sahip olmadığı bir öznitelik atandığında AttributeError yükseltilir (SIGNATUREPYTHON-27)
  • [Enhancement] Python adları .NET kelimelerini bölen üyeler yeniden adlandırıldı (z_order → zorder, x_ad_es_type → xad_es_type) (SIGNATUREPYTHON-28)
  • [Enhancement] Bir listenin içeriğine göre aşırı yüklemeler seçilir ve datetime ile Decimal değerleri .NET’e değişmeden aktarılır (SIGNATUREPYTHON-29)
  • [Enhancement] Tekerlek platform etiketleri manylinux_2_27 ve macosx_12_0 olarak güncellendi, 32‑bit Windows tekerleği kaldırıldı (SIGNATUREPYTHON-30)
  • [Fix] Linux tekerleği mevcut dağıtımlarda içe aktarılamıyordu (SIGNATUREPYTHON-31)
  • [Fix] GROUPDOCS_LIC_PATH göz ardı ediliyordu (SIGNATUREPYTHON-32)

Genel API değişiklikleri

Güncelleyicilerin yeniden adlandırılmış üyeler, yeni istisna türleri ve güncellenmiş platform etiketlerine uyum sağlaması gerekir. Öznitelik atamaları artık AttributeError yükseltir ve geri aramalar düz Python çağrılabilirleri olabilir.

Yeni sınıflar ve üyeler

  • groupdocs.signature: ProcessCompleteEventHandler, ProcessProgressEventHandler, ProcessStartEventHandler.
  • groupdocs.signature.domain: OoxmlCompliance.
  • groupdocs.signature.options: CreateSignatureStream, ReleaseSignatureStream, PreviewOptions.CreateDocPageStream, PreviewOptions.ReleaseDocPageStream, PreviewOptions.PreviewFormats, PreviewSignatureOptions.PreviewFormats.
  • ConsoleLogger: error().
  • DigitalSignOptions: allow_expired, allow_not_yet_valid.
  • DigitalSignature: certificate_store_location, certificate_store_name.
  • FileLogger: error().
  • ILogger: error().
  • ImageSignOptions: dispose().
  • LoadOptions: skip_external_resources, whitelisted_resources.
  • Mailmark2D: class_.
  • MetadataSignatureCollection: append(), get().
  • PreviewOptions: bir kurucu; önceden yoktu.
  • PreviewSignatureOptions: bir kurucu; önceden yoktu.
  • SearchResult: get_enumerator(), to_list().
  • Signature: dispose().
  • SignatureSettings: default_culture.
  • WordProcessingSaveOptions: ooxml_compliance.

Yeniden adlandırılanlar

Sınıf Eski ad Yeni ad
BarcodeTypes DATA_LOGIC_2OF_5 DATA_LOGIC_2OF5
BarcodeTypes GS1_CODE_128 GS1_CODE128
BarcodeTypes GS1_MICRO_PDF_417 GS1_MICRO_PDF417
BarcodeTypes IATA2OF_5 IATA2OF5
BarcodeTypes INTERLEAVED_2OF_5 INTERLEAVED_2OF5
BarcodeTypes MATRIX_2OF_5 MATRIX_2OF5
BarcodeTypes STANDARD_2OF_5 STANDARD_2OF5
BarcodeTypes UPCA_GS_1_CODE_128_COUPON UPCA_GS1_CODE_128_COUPON
BarcodeTypes UPCA_GS_1_DATABAR_COUPON UPCA_GS1_DATABAR_COUPON
DigitalSignature x_ad_es_type xad_es_type
FileType G_ZIP GZIP
FileType L_ZIP LZIP
XAdESType X_AD_ES XAD_ES
DigitalSignOptions x_ad_es_type xad_es_type
JpegCompressionColorMode Y_CB_CR YCB_CR
SignOptions z_order zorder
PdfTextAnnotationAppearance h_corner_radius hcorner_radius
PdfTextAnnotationAppearance v_corner_radius vcorner_radius

Yeni özellikler

Python geri aramalarıyla önizleme oluşturma

PreviewOptions artık düz Python fonksiyonlarıyla oluşturulabilir. create geri araması bir page_data nesnesi alır ve yazılabilir bir akış (dosya nesnesi veya io.BytesIO) döndürmelidir. release geri araması görüntü yazıldıktan sonra çağrılır ve aynı page_data ile akışı alır.

from groupdocs.signature import Signature
from groupdocs.signature.options import PreviewOptions

def create_page_stream(page_data):
    return open(f"page-{page_data.page_number}.png", "wb")

def release_page_stream(page_data, page_stream):
    page_stream.close()

with Signature("document.pdf") as signature:
    signature.generate_preview(PreviewOptions(create_page_stream, release_page_stream))

Logger, şifreleme ve özel hash geri aramaları olarak Python nesneleri

Düz Python nesneleri artık ILogger, IDataEncryption ve ICustomSignHash arayüzlerini uygulayabilir. trace, warning ve error metodlarına sahip bir logger nesnesi SignatureSettings‘e geçirilebilir. encode ve decode metodlarına sahip bir şifreleme nesnesi QR‑code veya metadata imzalarında options.data_encryption‘a atanabilir. Özel hash imzalayıcı bir fonksiyon ya da custom_sign_hash metoduna sahip bir nesne olabilir ve DigitalSignOptions.custom_sign_hash tarafından kullanılır.

import base64

from groupdocs.signature import Signature, SignatureSettings
from groupdocs.signature.options import QrCodeSignOptions


class SimpleLogger:
    def trace(self, message):
        print("TRACE:", message)

    def warning(self, message):
        print("WARN:", message)

    def error(self, message, exception=None):
        print("ERROR:", message, exception)


class Base64Encryption:
    def encode(self, source):
        return base64.b64encode(source.encode()).decode()

    def decode(self, source):
        return base64.b64decode(source).decode()


options = QrCodeSignOptions("Private text")
options.data_encryption = Base64Encryption()

with Signature("document.pdf", SignatureSettings(logger=SimpleLogger())) as signature:
    signature.sign("signed.pdf", options)

Python 3.14 desteği

Tekerlek artık python_requires=">=3.5,<3.15" olarak beyan ediyor ve tek bir tekerlek platformu Python 3.5 – 3.14 aralığını kapsıyor. Kodda değişiklik yapmaya gerek yok; aynı import ve kullanım yeni yorumlayıcıda da çalışıyor.

Kod örneği

Yukarıdaki “Yeni özellikler” bölümünde, önizleme oluşturma ve özel logger/şifreleme uygulamaları için çalışan Python kod örnekleri bulunmaktadır.

Güncellemeyi nasıl alabilirsiniz

PyPI

PyPI üzerinden en yeni GroupDocs.Signature for Python paketine yükseltin: groupdocs-signature-net 26.10.0

Kurulum:

pip install groupdocs-signature-net==26.10.0

Doğrudan indirme

GroupDocs.Signature for Python v26.10 sürüm sayfasından tekerlek paketlerini doğrudan indirin.

Kaynaklar