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,IDataEncryptionveICustomSignHashuygulamaları 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]
RuntimeErroryerineGroupDocsSignatureException,IncorrectPasswordExceptionvePasswordRequiredExceptionyükseltilir (SIGNATUREPYTHON-26) - [Enhancement] Bir sınıfın sahip olmadığı bir öznitelik atandığında
AttributeErroryü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
datetimeileDecimaldeğerleri .NET’e değişmeden aktarılır (SIGNATUREPYTHON-29) - [Enhancement] Tekerlek platform etiketleri
manylinux_2_27vemacosx_12_0olarak 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_PATHgö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.