Loaded Document Toolkit
HotPDF; var olan bir PDF'i açabilir, sayfa ve form işlemleri uygulayabilir, türlendirilmiş belge durumunu inceleyebilir, sayfaları işleyebilir veya arayabilir, aygıt yetenekleriyle yazdırabilir ve iş akışını başka bir kitaplığa taşımadan sonucu kaydedebilir
Page operations and merging
THotPDF.DeletePagesstandart bir tabanlı sayfa aralığı söz dizimini kabul eder, yinelenen seçimleri bir kez ayıklar ve geçerli bir sayfa ağacı korur- Yüklenen sayfaları silmek, yalnızca silinen sayfalara ait olan widget ek açıklamalarını ve boş AcroForm alan dallarını ayırır
THotPDF.InsertPagesFromDocumentveTHotPDF.AppendPagesFromDocument,THPDFMergeOptionskabul eder- Otomatik yeniden adlandırma devre dışıyken form adı çakışmaları sayfa eklenmeden önce denetlenir; böylece reddedilen bir birleştirme hedef sayfa sayısını değiştirmeden bırakır
THPDFMergeOptiondeğerlerimoIncludeOutlines,moIncludeFormFieldsvemoRenameConflictingFormFields'tir- Ana hat hedefleri seçilen kaynak-to-hedef sayfa haritası üzerinden yeniden eşlenir; içe aktarılan form kökleri hedef AcroForm'a kaydedilir
THotPDF.InsertLoadedBlankPage, kesin bir sıfır tabanlı konuma çağıranın belirlediği boyutta boş bir sayfa eklerTHPDFWatermarkTemplate.MakeCurve, sıralı bileşik yüklenen sayfa filigranlarına bir kübik Bezier eğrisi eklerTHPDFPage.AddCurveWatermark, yeni belge yazımı sırasında aynı kübik Bezier ilkelini sağlar- Yüklenen belge üst veri ayarlayıcıları Info sözlüğünü kirli işaretler; böylece artımlı kayıtlar düzenlenen alanları korur
BeginIncrementalUpdate; kaynak dosyayı yazma kilitli ve dosya destekli tutar, eksiksiz dosyayı bellekte tutmak yerine sınırlı bir kuyruk sondası kullanırSaveIncrementalUpdateyalnızca izlenen değişiklikleri gezer, kaynak önekini yeni bir hedefe akıtır ve aynı hedef için doğrulanmış, geri alınabilir doğrudan ekleme kullanırOpenLoadedPageContentStream; tek ve dizi/Contentsdeğerlerini tek bir konumlanabilir mantıksal stream olarak ortaya koyar, filtresiz bölümleri kaynak destekli depoda tutar ve bir seferde en fazla bir filtreli bölümü çözer/Contentsdeğeri dizi olan bir sayfayı düzenlemek, özgün stream'leri birleştirmeden veya temizlemeden taze bir dolaylı bölüm ekler; çizim ve uyumluluk somutlaştırması ise geometrik olarak büyüyen token ve bayt tamponları kullanır- Yüklenen ek açıklama ayarlayıcıları; içerik, başlık, benzersiz ad, değişiklik tarihi, dikdörtgen, bayraklar, renk ve kenarlık stilini doğrudan var olan ek açıklama nesnesi üzerinde günceller
- Ek açıklama dikdörtgeni uçları normalize edilir; kesikli kenarlıklar yalnızca pozitif tire uzunluklarını tutar ve görsel değişiklikler yalnızca etkilenen sayfanın önbellekteki çizimlerini geçersiz kılar
ActivateLoadedLinks; konumlanmış glif dizilerinden çıplak web ve e-posta adreslerini algılar, kenarlıksız URI ek açıklamaları oluşturur ve her aday için ek açıklama listesini yeniden taramadan eşleşen var olan bağlantıları atlarExtractLoadedPagesTextToStream, UTF-8 sayfa metnini doğrudan çağıranın sahiplendiği bir stream'e yazar; aralık, ayraç ve BOM kontrolleri sunarTHPDFViewerModel; pencere oluşturmadan sayfa form alanı isabet testini ve deterministik üstten alta klavye gezinmesini ortaya koyar- Yüklenen imza doğrulaması; RSA PKCS#1 v1.5, parametre doğrulamalı RSA-PSS, ECDSA ve RFC 3161 belge ile imza zaman damgalarını destekler. Katı bayt aralığı denetimleri, çağıranın stream konumunu korurken imzalı revizyon uzunluğunu ve imzasız kuyruk baytlarını bildirir
THPDFSignatureInfo.CertificateTimeValidity; sertifika sınırlarını ve imza zamanı tutarlılığını, kriptografiksvValidsemantiğini değiştirmeden sınıflandırırVerifyLoadedSignatureWithTrust, imzalayıcı yolunu çağıranın sağladığı güven çapalarına kurar ve çevrimdışı OCSP ya da CRL kanıtını doğrular; belge düzeyi DSS ve çağıran kanıtından önce imza başına VRI verisini tercih ederAnalyzeLoadedSignatureRevisions; geleneksel, stream, karma ve sıkıştırılmış nesne xref geçmişlerini gezer, sonraki değişiklikleri uzun vadeli doğrulama, form doldurma ve imzalama, ek açıklamalar ya da diğer düzenlemeler olarak sınıflandırır ve DocMDP ile FieldMDP'yi bağımsız değerlendirirSanitiseLoadedDocument; yalnızca-JavaScript, etkin içerik ya da katı güvenilmeyen belge ilkelerini eksiksiz nesne grafiğine uygular, ulaşılamaz yük nesnelerini kaldırır ve sınırlı sıkı bir yeniden yazım hazırlarScrubLoadedRedactionRemnants; sıkı bir tam yeniden yazımdan önce üst veriyi, ekleri, Redact ek açıklamalarını, ulaşılamaz kaynakları ve saklanan artımlı kaynak baytlarını kaldırır- Sınırlı çapraz başvuru kurtarması; bozulmuş
startxrefve xref verisi sonrasında sağlam xref bölümlerini yeniden konumlandırır ya da doğrulanmış doğrudan nesne ofsetlerini yeniden kurar; çağıranın kontrol ettiği tarama bütçeleri ve yapılandırılmış tanılama sunar - Ölçeklenebilir yükleme; dosya stream gövdelerini değişiklik olana dek kaynak destekli tutar, sıkıştırılmış nesneleri tembel çözer ve özel
THPDFRandomAccessSourceuygulamalarını kabul eder DecodeLoadedStreamToStream, sınırlı filtre zincirlerini çağıranın sahiplendiği stream'lere çalıştırır; belge genelinde bayt muhasebesi, filtre sayısı sınırları, dolaylı referans döngü denetimleri ve hat derinliği korumaları düşmanca girdilere karşı korunurExtractLoadedImageToStream; yerel görüntü yüklerini ya da genel çözülmüş filtre çıktısını, tam boyutlu bir bayt dizisi oluşturmadan doğrudan çağıranın sahiplendiği stream'lere kopyalarExportLoadedPagesStructured; anlamsal okuma sırasını, tabloları, geometriyi, stilleri ve sınırlı görüntü geçişlerini HTML, XHTML, XML veya JSON olarak serileştirirExtractLoadedTypedTables; birleştirilmiş kapsamalar, yinelenen başlıklar, sayfalar arası devamlılık, türlü değerler ve atomik CSV/JSON dışa aktarma içeren, güven puanlı kanonik ızgaralar kurarOptimizeLoadedStreams; filtresiz, Flate, LZW, ASCII85, ASCIIHex ve RunLength adaylarını seçer, büyük çalışma tamponlarını geçici dosyalara taşar, dört stratejili bir zlib tabanından sonra bütçeli Zopfli çalıştırabilir ve yalnızca pozitif tasarruf eşiğini karşılayan değişimleri benimserSubsetLoadedFonts; sayfa, Form XObject ve ek açıklama görünüm içeriklerini izledikten sonra desteklenen gömülü TrueType ve CFF yazı tiplerinden ulaşılamaz glif programlarını kaldırır; var olan karakter, CID, glif, genişlik ve ToUnicode eşlemelerini korurSetDocumentAttachmentMetadata, belge kaydedilmeden önce gömülü bir dosyayı yeniden adlandırır ve açıklamasını güncellerTHPDFLoadedFormField; özellik denetçileri için bayrakları, MaxLen'i, sayfa indeksini, sınırları ve yaygın metin alanı davranışlarını ortaya koyarTHPDFViewerModel; çağıranın sahiplendiği sayfa anlık görüntüleri oluşturur, yüklenen çizim önbelleğini yeniden kullanarak güncel sayfayı BMP, JPEG veya PNG olarak dosyalara ve stream'lere yazarTHPDFViewerModel, yüklenen PDF sayfasını değiştirmeden güncel görünümü ve üretilen anlık görüntüleri 90 derecelik adımlarla döndürürTHPDFViewerModel; ölçeklenebilir metin ve vektör çizim kayıtlarını korurken döndürmeye duyarlı gelişmiş meta dosyalar oluştururTHPDFViewer.DrawCurrentViewvePrintCurrentView; etkin vektör görünümünü bir çağıran tuvaline ya da yazıcı sayfasına sığdırıp ortalarTHPDFViewerModel.ProcessKeyInput, test edilebilir sayfa ve yakınlaştırma komutları sağlar; Viewer ok tuşu kaydırmayı yürütürTHPDFViewerModel.ProcessMouseWheel, test edilebilir Ctrl+tekerlek yakınlaştırması sağlar; Viewer dikey ve yatay kaydırmayı doğrudan yürütürTHPDFViewerModel.GetNextZoomLevelveGetPreviousZoomLevel; %5 ile %6400 arası deterministik standart yakınlaştırma gezinmesini ortaya koyarTHPDFViewerModel.PagePointToViewveViewPointToPage; sayfa döndürme, görünüm döndürme, MediaBox ofsetleri ve DPI boyunca çift yönlü koordinatlar sağlarTHPDFViewerModel.CreatePageRegionSnapshot, sınırlı bellekli seçim anlık görüntüleri için yalnızca istenen PDF dikdörtgenini çizerTHPDFViewer.ResetView, belgeyi boşaltmadan ya da geçerli sayfayı değiştirmeden sunum varsayılanlarını geri yükler
Forms and search
THotPDF.AddLoadedRadioButton; alt widget'ları, paylaşılan export value'ları ve geçerli açık/kapalı görünüm durumlarıyla bir üst radio alanı oluşturur- Yüklenen form alanları; bayrakları, en yüksek uzunluğu, hizalamayı, araç ipucunu, widget başına dikdörtgenleri, döndürmeyi, görünürlüğü, yazdırmayı, kenarlık genişliği ve rengini ve arka plan rengini, artımlı kaydetme kirli izleme ile güncelleyebilir
GetLoadedFormFieldNameValuePairsveSetLoadedFormFieldNameValuePairs, hafifname=valueyığınlarınıTStringsüzerinden alışverişe sokarExtractLoadedPagesText, bir tabanlı sayfa aralığını çağıranın seçtiği bir ayraçla birleştirirCMapResourcePath, otomatik CMap keşfini; standart koleksiyon klasörlerini içeren çağıran seçimli bir kökle geçersiz kılarCMapResourcePathatamak, yol değişmese bile yüklenen yazı tipi çözücülerini temizler; değiştirilen harici kaynakların da yeniden yüklenmesi gerekiyorsa önceHPDFClearCMapCachesçağırın- Standart CMap eşlemeleri çözümlenen kaynak kökü başına önbelleğe alınır, eşzamanlı tablo erişimini destekler ve karakter ile aralık tabloları sıralıyken logaritmik arama kullanır
- Eksiksiz UniJIS, UniGB, UniCNS ve UniKS UCS2 ve UTF16 eşlemeleri; yatay ve dikey metin için gömülüdür, destek skalerlerini ve
/DW2yokken standart dikey varsayılanları kapsar - Yüklenen yazı tipi çözücüleri; metin çıkarma, SVG dışa aktarma, metin değişimi ve açık çözücü istekleri tarafından paylaşılan, belge kapsamlı 32 MiB'lik ağırlıklı bir LRU önbelleği kullanır
GetLoadedFontDecoderbağımsız bir derin kopya döndürür; dahili salt okunur tüketiciler önbellekteki ayrıştırılmış çekirdeği yeniden kullanırLoadedFontDecoderCacheMaxBytes,GetLoadedFontDecoderCacheInfoveResetLoadedFontDecoderCacheStatistics; önbellek yeniden kullanımını kontrol eder ve ölçer- Düşük çözünürlüklü gri tonlama ve RGB JPEG bölgeleri; eksiksiz çözünürlüklü bir raster oluşturmadan, küçültülmüş ters DCT ölçekleme ve doğrudan satır yeniden örneklemesi kullanır
GetLastJPEGReducedDecodeInfo; en son uyumlu istek için kaynak, ölçeklenmiş, çıktı, satır ve çalışma belleği geometrisini bildirirAcquireLoadedImageStreamveAcquireLoadedImageRegionAtResolution, sıcak isabet piksel kopyaları olmayan değişmez paylaşımlı tanıtıcılar döndürür; önbelleklenenTBitmapmetotları ise çağıranın sahiplendiği uyumluluğu korurGetImageDecodeConcurrencyInfo; etkin uçuşları, zirve paralel sahip çözmeleri, yinelenen beklemeleri, tamamlanmaları ve hataları bildirirTHotPDF.SearchLoadedNext; önceki birTHPDFTextMatch'ten ileriye giden, durumsuz sayfa yerel arama ilkelidirTHPDFLoadedDocumentFacade; yüklenen formları, ek açıklamaları, ana hatları, yazı tiplerini ve görüntüleri türlü koleksiyon nesneleri hâlinde gruplarTHPDFLoadedFormInfo; güncel ve varsayılan değeri, alan türünü, açıklamayı, salt okunur bayrağını ve seçim seçeneklerini içerir
Outlines and resources
THotPDF.GetLoadedOutlineEntries;THPDFLoadedOutlineEntryArrayolarak eksiksiz bir ön-sıra anlık görüntüsü döndürür- Her
THPDFLoadedOutlineEntrybir indeks, ebeveyn indeksi, düzey, başlık ve çözümlenmiş hedef sayfa indeksi taşır THPDFLoadedOutlineInfo, aynı hiyerarşiyiTHPDFLoadedOutlineCollectionüzerinden ortaya koyarTHPDFLoadedResourceCollection; yazı tiplerini ve yüklenen görüntüleri sayar ve desteklenen görüntüleri çağıranın sahiplendiği bitmap'ler olarak çıkarabilir
System certificate signing
THotPDF.SignPDFWithSystemCertificate, dosya veya stream girdisini bir Windows certificate-store özel anahtarı üzerinden imzalarTHotPDF.GetLoadedSignaturePermissions; DocMDP'yi, Catalog izin bağlantısını, SigFieldLock ve FieldMDP yapılarını, yapısal ilkeyi kriptografik geçerlilik saymadanTHPDFSignaturePermissionInfoiçine okurTHPDFCertificateStoreSelector; geçerli kullanıcı ya da yerel makine kapsamını, depo adını, SHA-1 parmak izini ve anahtar sağlayıcı arayüzüne izin verilip verilmeyeceğini seçerTHPDFCMSSignDigestCallbackveHPDFCMSSignPDFStreamWithExternalSigner, altta yatan harici özetli imzalayıcı kancasını sağlar- CNG anahtarları RSA PKCS#1 SHA-256 imzalamayı kullanır; eski CSP anahtarları eşdeğer CryptoAPI yolunu kullanır
Printing
THPDFPrintOptions; harmanlanmış kopyaları, kağıt kodunu, özel kağıt genişliği ve uzunluğunu, yönü, düplex'i, kağıt haznesini ve kaliteyi desteklerTHPDFPrinterCapabilities; kağıt haznelerini, çözünürlükleri, düpleksi, rengi ve en fazla kopya sayısını paralel kağıt kodları, adları ve fiziksel boyutlarla birlikte raporlarHPDFBuildPrintPageSequence; harmanlanmış ve harmanlanmamış işlerde kullanılan deterministik fiziksel sayfa sırasını ortaya koyar
VCL viewer components
THPDFViewerModel; pencere oluşturmadan gezinmeyi, yakınlaştırma durumunu, metin arama sonuçlarını, sarmalamayı ve değişiklik bildirimlerini sahiplenirTHPDFViewer; seçili sayfayı kaydırılabilir önbellekli bir bitmap'e işler, gerçek boyut, sayfaya sığdır, genişliğe sığdır, özel yakınlaştırma ve görünüm döndürmeyi destekler ve geçerli arama isabetlerini işlenen sayfanın üzerine çizerTHPDFSearchPanel; arama metnini, büyük/küçük harf duyarlılığını, tam sözcük eşleşmesini ve sonraki/önceki gezinmeyi bir görüntüleyiciye bağlarTHPDFOutlineViewer; tam özyinelemeli yer imi ağacını görüntüler, bağlı görüntüleyicinin belge değişikliklerini izler ve bağlı görüntüleyicide gezinirTHPDFViewerActionalt sınıfları; ilk, önceki, sonraki, son, yakınlaştırma, sığdırma, döndürme, sıfırlama, sonrakini bul ve aramayı temizle eylemlerini sunar
Minimal viewer setup
PDF.LoadFromFile('input.pdf');
PDFViewer.PDFDocument := PDF;
OutlineViewer.Viewer := PDFViewer;
SearchPanel.Viewer := PDFViewer;
PDFViewer.ZoomMode := vzmFitWidth;
Ownership and indexing
- Yüklenen sayfa indeksleri ve hedef sayfa indeksleri sıfır tabanlıdır
- Sayfa aralığı dizeleri bir tabanlıdır ve çıkarma ile yazdırma için aynı ayrıştırıcıyı kullanır
- Facade kayıtları anlık görüntülerdir ve koleksiyon değiştirme metotları geçerli yüklenen belge üzerinde çalışır
- Çıkarılan bitmap'lerin sahibi çağırandır
Related typed inspection and placement records
THPDFPageElementKind,THPDFPageElementveTHPDFBaselineRole; yüklenen sayfa öğesi incelemesinin döndürdüğü metin, görüntü, yol ve taban çizgisi sonuçlarını tanımlarTHPDFWatermarkKind,THPDFWatermarkHorizPosveTHPDFWatermarkVertPos; yüklenen belge filigranlarının içeriğini ve yerleşimini seçer