ReplaceTag

Manipulacija stranicama

Opis

Obavlja doslovno traženje i zamjenu u tekstualnom sadržaju trenutačno odabrane stranice. Svaka pojava Tag u operatorima prikazivanja teksta stranice zamjenjuje se s NewValue, a tok operatora prepisuje se na mjestu. Vraća broj izvršenih zamjena

This is a content-stream level operation that does not relate to tagged PDF (structure tree) tagging — use BeginTag/EndTag for that. ReplaceTag is intended for form-letter style templates where placeholder tokens (for example {{customer-name}}) are pre-drawn into a template PDF and then filled in by code.

Sintaksa

Delphi

Function TPDFlib.ReplaceTag(Const Tag, NewValue: WideString): Integer;

ActiveX

Function PDFlib::ReplaceTag(Tag As String, NewValue As String) As Long

DLL

int DLReplaceTag(int InstanceID, const wchar_t * Tag, const wchar_t * NewValue);

Parametri

TagDoslovni niz znakova za pretraživanje u tekstualnom sadržaju stranice. Podudaranje razlikuje velika i mala slova i odnosi se samo na trenutačno odabranu stranicu — pri obradi predloška s više stranica pozovite jednom po stranici.
NewValueZamjenski niz znakova. Može biti dulji ili kraći od Tag; okolni se raspored ne prekraja, pa vrlo velike zamjene mogu prijeći izvorni stupac

Povratna vrijednost

Broj puta koliko je Tag pronađen i zamijenjen na odabranoj stranici. Nula znači da nema pojava (ili nije odabrana stranica)

Napomene

Pretražuje se samo tekst unutar operatora prikaza teksta (Tj, TJ, ', "). Rezervirana mjesta koja su prošla kerning ili su raspodijeljena između više operatora možda se neće pronaći — držite rezervirana mjesta u predlošku kratkima i iscrtajte ih kao jedan niz znakova. Funkcija ne pretražuje sadržaje napomena, vrijednosti polja obrazaca ni ugrađene datoteke.

Choose placeholder syntax that is unlikely to occur in real content, such as {{name}}, <<Customer>>, or ~~SKU~~.

Primjer

// Fill in a single-page invoice template
PDF.LoadFromFile('invoice-template.pdf', '');
PDF.SelectPage(1);

PDF.ReplaceTag('{{customer-name}}', 'Alice Smith');
PDF.ReplaceTag('{{invoice-no}}',   'INV-2026-0042');
PDF.ReplaceTag('{{total}}',        '$1,234.56');

PDF.SaveToFile('invoice-INV-2026-0042.pdf');

// Multi-page template: iterate over pages
for I := 1 to PDF.GetPageCount do
begin
  PDF.SelectPage(I);
  PDF.ReplaceTag('{{customer-name}}', CustomerName);
end;

Vidi također

ReplaceImage, SelectPage, PageCount