pdf

Utilisez cette approche lorsque les tâches impliquent de lire, créer ou examiner des fichiers PDF où le rendu et la mise en page sont importants ; privilégiez les vérifications visuelles en rendant les pages (Poppler) et utilisez des outils Python tels que `reportlab`, `pdfplumber` et `pypdf` pour la génération et l'extraction.

npx skills add https://github.com/openai/skills --skill pdf

Compétence PDF

Quand l'utiliser

  • Lire ou examiner le contenu PDF où la mise en page et les visuels importent.
  • Créer des PDF par programmation avec un formatage fiable.
  • Valider le rendu final avant la livraison.

Flux de travail

  1. Privilégier l'examen visuel : rendre les pages PDF en PNG et les inspecter.
    • Utiliser pdftoppm s'il est disponible.
    • S'il n'est pas disponible, installer Poppler ou demander à l'utilisateur d'examiner le résultat localement.
  2. Utiliser reportlab pour générer des PDF lors de la création de nouveaux documents.
  3. Utiliser pdfplumber (ou pypdf) pour l'extraction de texte et les vérifications rapides ; ne pas s'y fier pour la fidélité de la mise en page.
  4. Après chaque mise à jour significative, re-rendre les pages et vérifier l'alignement, l'espacement et la lisibilité.

Conventions temporaires et de sortie

  • Utiliser tmp/pdfs/ pour les fichiers intermédiaires ; supprimer une fois terminé.
  • Écrire les artefacts finaux sous output/pdf/ lors du travail dans ce dépôt.
  • Conserver les noms de fichiers stables et descriptifs.

Dépendances (installer si manquants)

Privilégier uv pour la gestion des dépendances.

Paquets Python :

uv pip install reportlab pdfplumber pypdf

Si uv n'est pas disponible :

python3 -m pip install reportlab pdfplumber pypdf

Outils système (pour le rendu) :

# macOS (Homebrew)
brew install poppler

# Ubuntu/Debian
sudo apt-get install -y poppler-utils

Si l'installation n'est pas possible dans cet environnement, informer l'utilisateur de la dépendance manquante et comment l'installer localement.

Environnement

Aucune variable d'environnement requise.

Commande de rendu

pdftoppm -png $INPUT_PDF $OUTPUT_PREFIX

Attentes de qualité

  • Maintenir une conception visuelle soignée : typographie cohérente, espacement, marges et hiérarchie des sections.
  • Éviter les problèmes de rendu : texte coupé, chevauchement d'éléments, tableaux cassés, carrés noirs ou glyphes illisibles.
  • Les graphiques, tableaux et images doivent être nets, alignés et clairement étiquetés.
  • Utiliser uniquement des traits d'union ASCII. Éviter U+2011 (trait d'union insécable) et autres tirets Unicode.
  • Les citations et références doivent être lisibles par l'homme ; ne jamais laisser de jetons d'outils ou de chaînes d'espace réservé.

Vérifications finales

  • Ne pas livrer jusqu'à ce que l'inspection PNG la plus récente ne montre zéro défaut visuel ou de formatage.
  • Confirmer que les en-têtes/pieds de page, la numérotation des pages et les transitions de section ont une apparence soignée.
  • Garder les fichiers intermédiaires organisés ou les supprimer après approbation finale.