ReplaceTagA

Przetwarzanie stron

Opis

Końcowa litera A oznacza punkt wejścia DLL ANSI (char); powierzchnia ActiveX/COM udostępnia wyłącznie postać Unicode. Zachowanie jest identyczne jak w ReplaceTag, a argumenty ciągów są interpretowane przy użyciu bieżącej strony kodowej SetAnsiMode

Wykonuje dosłowne wyszukiwanie i zastępowanie w zawartości tekstowej aktualnie wybranej strony. Każde wystąpienie Tag w operatorach wyświetlania tekstu strony zostaje zastąpione przez NewValue, a strumień operatorów jest przepisywany w miejscu. Zwraca liczbę wykonanych zastąpień

Jest to operacja na poziomie strumienia zawartości, niezwiązana z oznaczaniem tagowanego PDF (drzewa struktury) — do tego celu służą BeginTag/EndTag. Funkcja ReplaceTag jest przeznaczona do szablonów listów seryjnych, w których tokeny zastępcze, na przykład {{customer-name}}, są wcześniej narysowane w szablonie PDF, a następnie wypełniane przez kod

Składnia

Delphi

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

DLL

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

Parametry

TagDosłowny ciąg wyszukiwany w zawartości tekstowej strony. Dopasowanie uwzględnia wielkość liter i dotyczy tylko aktualnie wybranej strony — podczas przetwarzania szablonu wielostronicowego należy wywołać funkcję raz dla każdej strony
NewValueCiąg zastępczy. Może być dłuższy lub krótszy niż Tag; otaczający układ nie jest ponownie przelewany, dlatego bardzo długie zastąpienia mogą wyjść poza pierwotną kolumnę

Wartość zwracana

Liczba wystąpień Tag znalezionych i zastąpionych na wybranej stronie. Zero oznacza, że nie znaleziono wystąpień lub nie wybrano strony

Uwagi

Przeszukiwany jest wyłącznie tekst wewnątrz operatorów wyświetlania tekstu (Tj, TJ, ', "). Symbole zastępcze z kerningiem lub podzielone między wiele operatorów mogą nie zostać dopasowane — symbole w szablonie powinny być krótkie i narysowane jako pojedynczy ciąg. Funkcja nie przeszukuje zawartości adnotacji, wartości pól formularzy ani osadzonych plików

Wybierz składnię symboli zastępczych, która prawdopodobnie nie wystąpi w rzeczywistej zawartości, na przykład {{name}}, <<Customer>> lub ~~SKU~~

Przykład

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

Zobacz również

ReplaceImage, SelectPage, PageCount