ReplaceTextBlockCharSourceBytes
Tekst, extractie, contentstreams, documentbewerking
Beschrijving
Vervangt het gecodeerde bronbytebereik dat aan één geëxtraheerd teken in het geselecteerde document is toegewezen
Syntaxis
Delphi
Function TPDFlib.ReplaceTextBlockCharSourceBytes(TextBlockListID, Index,
CharIndex: Integer; Const NewSource: AnsiString): Integer;Parameters
| TextBlockListID | Handle die door ExtractPageTextBlocks voor het geselecteerde document is teruggegeven |
|---|---|
| Index | Tekstblokindex beginnend bij 1 |
| CharIndex | UTF-16-code-eenheidpositie binnen de bloktekst, beginnend bij 1 |
| NewSource | Ruwe vervangingsbytes in de actieve PDF-fontcodering, geen Unicodetekst |
Retourwaarden
| 1 | Het toegewezen bytebereik is vervangen en de bijbehorende pagina-contentlaag is herschreven |
|---|---|
| 0 | De locatie is ongeldig, verouderd of alleen-lezen, of de contentlaag kon niet worden herschreven |
Foutcodes
PDFLIB_ERROR_TEXT_LOCATION_INVALID | De lijst, index, locatie of contentinstructie is ongeldig |
|---|---|
PDFLIB_ERROR_TEXT_LOCATION_STALE | De contentlaag van de doelpagina is sinds de extractie veranderd |
PDFLIB_ERROR_TEXT_LOCATION_READ_ONLY | Het teken is gegenereerd, gesubstitueerd door /ActualText, genest in een Form, getranscodeerd vóór fonttoewijzing of over contentlagen heen gesplitst |
Opmerkingen
De methode herschrijft alleen de inhoudslaag van de omvattende pagina en behoudt aangrenzende Tj-strings, TJ-arraystrings en kerninggetallen
Twee onafhankelijke vingerprinten detecteren verouderde inhoud vóór parsen en schrijven, zodat een oud extractieresultaat niet stilletjes gewijzigde bytes kan raken
Extraheer paginattekst opnieuw na elke geslaagde vervanging, want alle locaties uit de vorige lijst zijn verouderd
Ligatuuruitgebreide tekens delen één bronbereik en moeten als één bron-glyph worden behandeld
De geselecteerde pagina wordt hersteld na succes of mislukking