ReplaceTextBlockCharSourceBytes
Metin, Ayıklama, İçerik akışları, Belge düzenleme
Açıklama
Seçili belgede ayıklanan bir karakterle eşlenmiş kodlanmış kaynak bayt aralığını değiştirir
Sözdizimi
Delphi
Function TPDFlib.ReplaceTextBlockCharSourceBytes(TextBlockListID, Index,
CharIndex: Integer; Const NewSource: AnsiString): Integer;Parametreler
| TextBlockListID | Seçili belge için ExtractPageTextBlocks tarafından döndürülen tanıtıcı |
|---|---|
| Index | 1 tabanlı metin bloğu dizini |
| CharIndex | Blok metni içindeki 1 tabanlı UTF-16 kod birimi konumu |
| NewSource | Etkin PDF yazı tipi kodlamasında ham yerine koyma baytları; Unicode metin değil |
Dönüş değerleri
| 1 | Eşlenmiş bayt aralığı değiştirildi ve sayfa içerik katmanı yeniden yazıldı |
|---|---|
| 0 | Konum geçersiz, bayat veya salt okunur ya da içerik katmanı yeniden yazılamadı |
Hata kodları
PDFLIB_ERROR_TEXT_LOCATION_INVALID | Liste, dizin, konum veya içerik yönergesi geçersiz |
|---|---|
PDFLIB_ERROR_TEXT_LOCATION_STALE | Hedef sayfa içerik katmanı, ayıklamadan bu yana değişti |
PDFLIB_ERROR_TEXT_LOCATION_READ_ONLY | Karakter üretilmiş, /ActualText ile değiştirilmiş, bir Form içinde iç içe geçmiş, yazı tipi eşlemesinden önce transkodlanmış veya içerik katmanlarına bölünmüş |
Açıklamalar
Yöntem yalnızca içeren sayfa içerik katmanını yeniden yazar ve komşu Tj dizelerini, TJ dizi dizelerini ve kerning sayılarını korur
İki bağımsız parmak izi, ayrıştırmadan ve yazmadan önce bayat içeriği saptar; böylece eski bir ayıklama sonucu değişmiş baytları sessizce hedefleyemez
Her başarılı değiştirmeden sonra sayfa metnini yeniden ayıklayın; çünkü önceki listedeki tüm konumlar bayatlamıştır
Bağlama genişletilmiş karakterler tek bir kaynak aralığını paylaşır ve tek bir kaynak glifi olarak ele alınmalıdır
Seçili sayfa, başarıdan veya başarısızlıktan sonra onarılır