ReplaceTagA

Manipolazione delle pagine

Descrizione

Il suffisso A indica l'entry point DLL ANSI (char); l'interfaccia ActiveX/COM espone soltanto la forma Unicode. Il comportamento è identico a ReplaceTag e gli argomenti stringa vengono interpretati usando la code page corrente di SetAnsiMode

Esegue ricerca e sostituzione letterale nella pagina. Ogni Tag negli operatori testuali viene sostituito con NewValue e il flusso riscritto. Restituisce il numero di sostituzioni

È un'operazione sul flusso, non sui tag PDF con struttura — per quelli usare BeginTag/EndTag. ReplaceTag serve per modelli con segnaposto già disegnati, ad esempio {{customer-name}}, compilati dal codice

Sintassi

Delphi

Function DLReplaceTagA(InstanceID: Integer; Tag, NewValue: PAnsiChar): Integer;

DLL

int DLReplaceTagA(int InstanceID, const char * Tag, const char * NewValue);

Parametri

TagStringa letterale da cercare nel contenuto testuale della pagina. La corrispondenza distingue tra maiuscole e minuscole e si applica soltanto alla pagina attualmente selezionata; chiamare una volta per ogni pagina durante l'elaborazione di un modello multipagina
NewValueStringa sostitutiva, che può essere più lunga o corta di Tag. Il layout circostante non viene ridisposto, quindi sostituzioni grandi possono superare la colonna.

Valore restituito

Numero di occorrenze di Tag trovate e sostituite nella pagina selezionata. Zero indica nessuna occorrenza o nessuna pagina selezionata.

Note

Viene cercato soltanto il testo negli operatori di visualizzazione del testo (Tj, TJ, ', "). I segnaposto a cui è stata applicata la crenatura o suddivisi tra più operatori potrebbero non corrispondere: mantenere brevi i segnaposto del modello e disegnarli come un'unica stringa. La funzione non cerca nel contenuto delle annotazioni, nei valori dei campi modulo o nei file incorporati

Scegliere una sintassi segnaposto improbabile nel contenuto reale, come {{name}}, <<Customer>> o ~~SKU~~.

Esempio

// 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;

Vedere anche

ReplaceImage, SelectPage, PageCount