React Native Requires Chilkat v11.7.0+
>, says so with placeholderSyntax, written around the word "name".
React Native
PDF Placeholders with Other Delimiters: [[name]]
See more PDF Text Replacement Examples
Demonstrates the "placeholderSyntax" option. Placeholders are {{name}} by default; a template written with other delimiters, such as [[name]] or <Chilkat React Native Downloads
import { JsonObject, Pdf } from '@chilkat/react-native'
function chilkatExample() {
let success = false;
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
// The PDF used in this example is available at letter_template.pdf
const pdf = new Pdf();
success = true;
try {
pdf.loadFile('qa_data/pdf/letter_template.pdf');
} catch {
success = false;
}
if (!success) {
console.log(pdf.lastErrorText);
return;
}
// The letter reads: "Dear [[name]]," ... "expires on [[expiry]]" ... "[[amount]] per year" ... "[[agent]]".
const json = new JsonObject();
json.updateString('placeholderSyntax', '[[name]]');
json.updateString('placeholders.date', 'October 18, 2026');
json.updateString('placeholders.name', 'Ms. Rivera');
json.updateString('placeholders.expiry', 'December 31, 2026');
json.updateString('placeholders.amount', '$299.00');
json.updateString('placeholders.agent', 'Dana Whitfield, Account Manager');
const jsonOut = new JsonObject();
success = true;
try {
pdf.textReplace('apply', json, jsonOut);
} catch {
success = false;
}
if (!success) {
console.log(`Not applied: ${jsonOut.emit()}`);
if (!success) {
console.log(pdf.lastErrorText);
return;
}
}
let i = 0;
const countI = jsonOut.sizeOfArray('replacements');
while (i < countI) {
jsonOut.i = i;
console.log(`[[${jsonOut.stringOf('replacements[i].field')}]] replaced`);
i++;
}
success = true;
try {
pdf.writeFile('qa_output/letter_rivera.pdf');
} catch {
success = false;
}
if (!success) {
console.log(pdf.lastErrorText);
return;
}
// Sample output:
// [[date]] replaced
// [[name]] replaced
// [[expiry]] replaced
// [[amount]] replaced
// [[agent]] replaced
}