- Ce sujet contient 31 réponses, 4 participants et a été mis à jour pour la dernière fois par , le il y a 1 année et 6 mois.
-
Sujet
-
Bonjour à tous !
Une question qui avant de venir demander me semblait simple !
Renommer des champs de formulaire textes en PDF (ex: j’ai “text-1”, “chabada”, “undefied”… et j’aimerais avoir “DJCK_001”, “DJCK_002” etc…
J’ai beaucoup de formulaires PDF avec des champs Text, check box et radio a renommer et customiser.
J’arrive a changer les couleurs, remplacer des caractères avec un script que j’ai trouvé, mais apparemment je bug pour renommer et intégrer ma séquence.
Please help ;O)
Voici le script trouvé… (pour le remplacement) // le site en référence pour le script : https://vielhuber.de/fr/blog/renommer-pdf-form-fields-en-masse/
var fields = [];
var props = [
'alignment',
'borderStyle',
'buttonAlignX',
'buttonAlignY',
'buttonFitBounds',
'buttonScaleHow',
'buttonScaleWhen',
'comb',
'display',
'doNotScroll',
'editable',
'exportValues',
'fileSelect',
'fillColor',
'highlight',
'lineWidth',
'multiline',
'multipleSelection',
'numItems',
'password',
'readonly',
'richText',
'richValue',
'rotation',
'strokeColor',
'style',
'textColor',
'textFont',
'textSize',
'userName'
];
for (var i = 0; i < this.numFields; i++) {
fields.push(this.getNthFieldName(i));
}
for (var i = 0; i < fields.length; i++) {
var source_name = fields;
// skip some names if needed
if (source_name.indexOf('.') === -1) {
continue;
}
// modifications to name (various examples)
var target_name = source_name;
target_name = source_name.replace(/\./g, '#');
//target_name = target_name.toLowerCase();
//target_name = target_name.replace(/\s/g, '');
//target_name = target_name.replace(/\ß/g, 'ss');
//target_name = target_name.replace(/\-|\/|\*|\.|\;|\:/g, '_');
//target_name = target_name+'-S1';
var source_field = this.getField(source_name);
if (source_field !== null) {
// debug output (if needed)
//console.println(JSON.stringify([target_name, source_field.type, source_field.page, source_field.rect]));
var page = source_field.page;
if( !Array.isArray(page) ) { page = [page]; }
for(var pages__value = 0; pages__value < page.length; pages__value++) {
var rect = this.getField(source_name+'.'+pages__value).rect;
var target_field = this.addField(
target_name,
source_field.type,
page[pages__value],
rect
);
}
for (var p = 0; p < props.length; p++) {
if (testField(source_field, props[p])) {
target_field[props[p]] = source_field[props[p]];
}
}
this.removeField(source_name);
}
}
function testField(field, prop) {
try {
var tprop = field[prop];
return true;
} catch (e) {
return false;
}
}
- Vous devez être connecté pour répondre à ce sujet.