ReplaceTag

Manipulación de páginas

Descripción

Realiza una búsqueda y reemplazo literal en el contenido de texto de la página seleccionada actualmente. Cada aparición de Tag en los operadores de visualización de texto de la página se reemplaza por NewValue y la secuencia de operadores se vuelve a escribir en su lugar. Devuelve el número de sustituciones realizadas

Esta es una operación de nivel de flujo de contenido que no se relaciona con el etiquetado PDF etiquetado (árbol de estructura) — use BeginTag/EndTag para eso. ReplaceTag está pensado para plantillas de cartas modelo donde los tokens de marcador de posición, por ejemplo {{customer-name}}, se dibujan previamente en un PDF de plantilla y luego se rellenan mediante código

Sintaxis

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

Parámetros

TagLa cadena literal que se buscará en el contenido de texto de la página. La coincidencia distingue mayúsculas de minúsculas y solo se aplica a la página seleccionada actualmente; llame una vez por página al procesar una plantilla de varias páginas
NewValueLa cadena de reemplazo. Puede ser más larga o más corta que Tag; el diseño circundante no se recompone, por lo que sustituciones muy grandes pueden sobrepasar la columna original

Valor devuelto

La cantidad de veces que se encontró y reemplazó Tag en la página seleccionada Cero significa que no se encontró ninguna ocurrencia (o que no hay ninguna página seleccionada)

Observaciones

Solo se busca texto dentro de operadores que muestran texto (Tj, TJ, ', ") Los marcadores de posición con interletraje o divididos entre varios operadores pueden no coincidir; mantenga breves los marcadores de plantilla y dibújelos como una sola cadena La función no busca contenido de anotaciones, valores de campos de formulario ni archivos incrustados

Elija una sintaxis de marcador de posición que sea poco probable que aparezca en contenido real, como {{name}}, <<Customer>> o ~~SKU~~

Ejemplo

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

Véase también

ReplaceImage, SelectPage, PageCount