GetTextBlockCharContentLocation
Tekst, wyodrębnianie, strumienie zawartości, diagnostyka
Opis
Zwraca stabilną lokalizację w strumieniu zawartości i zakres zakodowanych bajtów źródłowych powiązany z jednym wyodrębnionym znakiem
Składnia
Delphi
Function TPDFlib.GetTextBlockCharContentLocation(TextBlockListID, Index,
CharIndex: Integer; Out ContentLayer, StreamObjectNumber,
StreamGeneration, InstructionIndex, OperandIndex, ArrayElementIndex,
SourceByteOffset, SourceByteLength, Flags: Integer): Integer;Parametry
| TextBlockListID | Uchwyt zwrócony przez ExtractPageTextBlocks |
|---|---|
| Index | Indeks bloku tekstu liczony od 1 |
| CharIndex | Pozycja jednostki kodu UTF-16 licząca od 1 wewnątrz tekstu bloku |
| ContentLayer | Warstwa /Contents strony liczona od 1 albo 0 dla zawartości zagnieżdżonej |
| StreamObjectNumber | Numer obiektu strumienia zawierającego albo 0 dla strumienia bezpośredniego |
| StreamGeneration | Numer generacji strumienia zawierającego |
| InstructionIndex | Indeks instrukcji liczony od 0 w zdekodowanym programie zawartości |
| OperandIndex | Indeks operandu łańcucha tekstowego liczony od 0 |
| ArrayElementIndex | Element tablicy TJ liczony od 0 albo -1 dla bezpośredniego operandu łańcuchowego |
| SourceByteOffset | Przesunięcie liczone od 0 w zdekodowanej wartości łańcucha albo -1, gdy nie istnieje bezpiecznie adresowalny zakres |
| SourceByteLength | Liczba zakodowanych bajtów źródłowych dla glifu źródłowego albo 0, gdy nie istnieje bezpiecznie adresowalny zakres |
| Flags | Flagi lokalizacji zawartości łączone bitowo, opisane poniżej |
Wartości zwracane
| 1 | Zwrócono rekord lokalizacji, łącznie z rekordami syntetycznymi lub tylko do odczytu |
|---|---|
| 0 | Uchwyt, indeks bloku lub indeks znaku jest nieprawidłowy |
Flagi
PDF_TEXT_CHAR_CONTENT_LOCATION_VALID | Zakres bajtów identyfikuje łańcuch zawartości, z zastrzeżeniem ewentualnych flag tylko do odczytu |
|---|---|
PDF_TEXT_CHAR_CONTENT_LOCATION_GENERATED | Znak został wygenerowany podczas układania i nie ma bajtów źródłowych |
PDF_TEXT_CHAR_CONTENT_LOCATION_LIGATURE | Kilka wyodrębnionych pozycji UTF-16 współdzieli jeden zakres glifu źródłowego |
PDF_TEXT_CHAR_CONTENT_LOCATION_ACTUALTEXT | Znak pochodzi z zastąpienia /ActualText i jest tylko do odczytu |
PDF_TEXT_CHAR_CONTENT_LOCATION_NESTED | Znak pochodzi z zagnieżdżonej zawartości Form i jest tylko do odczytu |
PDF_TEXT_CHAR_CONTENT_LOCATION_CROSS_LAYER | Operand i operator pokazywania tekstu przekraczają warstwy zawartości strony i są tylko do odczytu |
PDF_TEXT_CHAR_CONTENT_LOCATION_TRANSCODED | Łańcuch źródłowy został przekodowany przed mapowaniem czcionki, więc zdekodowane przesunięcia nie mogą bezpiecznie adresować jego oryginalnych bajtów |
Uwagi
Przesunięcia adresują bajty zdekodowanego ciągu zakodowanego fontem, a nie tekst Unicode
Znaki uzupełniające i rozwinięcia ligatur mogą zwracać ten sam zakres źródłowy dla więcej niż jednej pozycji UTF-16
Używaj ReplaceTextBlockCharSourceBytes tylko, gdy flaga ważności jest ustawiona i żadna z flag tylko do odczytu nie występuje
Wyszukiwanie lokalizacji używa rozpiętości z czasu ekstrakcji i nie parsuje ponownie treści strony