# Templates de positions de signature

Ce dossier contient les positions pré-configurées des signatures pour chaque type de document.

## Format

```json
{
  "templateName": "contrat_cddu",
  "description": "Contrat CDDU mono/multi-mois",
  "pdfPattern": "contrat_cddu_.*\\.pdf",
  "positions": [
    {
      "role": "Employeur",
      "page": 3,
      "x": 50,
      "y": 150,
      "width": 200,
      "height": 80
    },
    {
      "role": "Salarié",
      "page": 3,
      "x": 350,
      "y": 150,
      "width": 200,
      "height": 80
    }
  ]
}
```

## Système de coordonnées PDF

- **Origine (0,0)** : Coin INFÉRIEUR GAUCHE de la page
- **X** : De gauche à droite (0 → largeur page)
- **Y** : De bas en haut (0 → hauteur page)
- **Page A4** : 595x842 points

### Exemples de positions courantes

```
Haut de page : y = 750-800
Milieu de page : y = 400-450
Bas de page : y = 50-150

Gauche : x = 50-100
Centre : x = 250-300
Droite : x = 400-500
```

## Création d'un nouveau template

### Méthode 1 : Mesure manuelle

1. Ouvrir le PDF dans Adobe Acrobat ou un éditeur
2. Activer l'outil de mesure
3. Noter les coordonnées X,Y du coin inférieur gauche de la zone de signature
4. Noter la largeur et hauteur souhaitées
5. Créer le fichier JSON

### Méthode 2 : Test et ajustement

1. Créer un template avec des positions estimées
2. Tester avec `create-real-signature.js`
3. Signer le document
4. Ajuster les positions si nécessaire
5. Re-tester jusqu'à satisfaction

### Méthode 3 : Depuis DocuSeal

Si vous avez déjà un document configuré dans DocuSeal:

1. Noter où les zones de signature sont placées visuellement
2. Convertir en coordonnées PDF (attention: DocuSeal utilise une origine en haut-gauche)
3. Formule de conversion: `y_pdf = hauteur_page - y_docuseal - hauteur_signature`

## Templates disponibles

### contrat_cddu.json

Contrat CDDU standard (3 pages)
- Employeur: Page 3, bas gauche
- Salarié: Page 3, bas droite

### contrat_rg.json

Contrat Régime Général
- Employeur: Page 2, bas gauche
- Salarié: Page 2, bas droite

### avenant.json

Avenant de contrat
- Employeur: Page 1, bas gauche
- Salarié: Page 1, bas droite

## Utilisation dans le code

```javascript
const fs = require('fs');

// Charger un template
const template = JSON.parse(
  fs.readFileSync('./signature-templates/contrat_cddu.json', 'utf-8')
);

// Utiliser les positions
const positions = {};
template.positions.forEach(p => {
  positions[p.role] = {
    page: p.page,
    x: p.x,
    y: p.y,
    width: p.width,
    height: p.height,
  };
});
```

## Auto-détection

Le script `create-real-signature.js` peut auto-détecter le template à utiliser basé sur:
- Le nom du fichier (regex pattern matching)
- Le type de document (détecté dans les métadonnées)
- Le nombre de pages

## Maintenance

Quand créer un nouveau template:
- Nouveau type de contrat
- Changement de mise en page
- Ajout de nouveaux rôles de signataires

Quand mettre à jour un template existant:
- Les signatures sont mal positionnées
- Changement de format de document
- Feedback utilisateurs
