SearchAndReplaceTextInContent

Udtræk, Unicode, indholdsredigering

Beskrivelse

Erstatter alle ikke-overlappende forekomster af forespørgslen i understøttet sidetekst med præcise kildebyte-intervaller og en verificeret skrifttypeafbildning

Metoden bevarer omgivende tekst, eksisterende numeriske TJ-justeringer og det oprindelige efterfølgende tekstanker; en tom erstatning sletter kun de matchede tegn

Alle valgte hit planlægges og skrives om, før sideindholdet skrives; tekst, der ikke kan repræsenteres, ufuldstændige skrifttypeafbildninger eller en ikke-understøttet kildelokation afviser anmodningen uden at erstatte nogen valgt sidetekst

Syntaks

Delphi

Function TPDFlib.SearchAndReplaceTextInContent(Const Query, Replacement: WideString; Options: TPDFlibSearchOptions; Const PageRange: WideString): Integer;

Parametre

Query må ikke være tom; Replacement må være tom; PageRange bruger den eksisterende sideintervalsyntaks, og et tomt interval vælger alle sider

Dette indgangspunkt uddelegerer til SearchAndReplaceTextInContentEx med ReplacementFontID 0, så erstatningen bruger den verificerede oprindelige skrifttype

Returværdier

Returnerer antallet af erstattede match eller 0 ved ingen match eller en afvist anmodning; undersøg GetLastUnicodeReplacementDiagnostics for at skelne udfaldene

LastErrorCode 535 rapporterer ugyldigt input eller indfangningsgrænser; 537 rapporterer ikke-understøttet redigering eller kodning; en gyldig søgning uden match rapporterer fuldført med replacedHits 0

Bemærkninger

Afbildninger kommer fra en fuldt understøttet ToUnicode CMap eller en verificeret simple-font-kodning, herunder understøttede Differences-glyfnavne; ingen konvertering via systemets kodepage eller gættede glyfkodninger bruges

Navngiven UseCMap-arv, uopløste afbildninger, Type3-skrifttypefremrykninger, lodret skrivning, indlejret Form-tekst, syntetiske tegn, ActualText-erstatninger, transkodede strenge, match på tværs af lag og delvise ligaturgrupper rapporteres som ikke-understøttet

En komplet ligaturgruppe kan erstattes, når dens oprindelige bytes og Unicode-afbildning er verificeret; præfikser og suffikser forbliver i deres oprindelige skrifttype

Søgevalgmulighederne bevarer deres eksisterende betydning, herunder versal følsomhed, hele ord, jokertegn, diakritiske tegn, kanonisk ækvivalens og grafembegrænsninger; soAcrossLines og kald under et åbent API-scope afvises

Planlægningen understøtter op til 4096 match; indfangede kilde snapshots er begrænset til 64 MiB pr. strøm og 512 MiB i alt med 64 MiB indfangede kildelokationsposter; skrifttypeafbildningens parser anvender også afgrænsede token- og code-space-grænser med transaktionssummer på 262144 afbildninger og 8 Mi UTF-16-målenheder

Disse grænser begrænser bevarede indfangnings- og planlægningsdata; eksisterende sideindlæsning og gengivelse har deres egne allokeringer, så de er ingen garanti for det absolutte maksimale hukommelsesforbrug

Delte indholdsstrømme og ressourcedictionaryer kopieres for de valgte sider; dokumentvalget gendannes, og forældede tekstblok-lister skal udtrækkes igen efter en vellykket redigering

Denne handling ændrer aktivt sideindhold og er ikke en API til sikker sletning: frakoblede objekter eller tidligere inkrementelle revisioner kan stadig indeholde de oprindelige bytes

Se også

SearchAndReplaceTextInContent, SearchAndReplaceTextInContentEx, GetLastUnicodeReplacementDiagnostics, SearchText