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