Si vous envisager de bricoler des fichiers PDF la première étape est de décompresser le fichier, pour cela la commande pdftk fait parfaitement ce travail.
Installation
sudo apt install pdftk-java
Utilisation
pdftk FICHIER_PDP_INITIAL.PDF output NOUVEAU_FICHIER_PDF_DECOMPRESSE.PDF uncompress
L’avantage de ce fichier décompresser c’est qu’il est possible de le modifier à l’aide d’outil de script comme sed.
Notez que le fichier résultant contient encore du binaire et qu’il ne vous sera pas possible d’utiliser la commande grep directement, pour cela vous devrez passer par la commande strings.
Par exemple :
strings NOUVEAU_FICHIER_PDF_DECOMPRESSE.PDF | grep -i 'RG'
En fait, avec grep la commande il faut utiliser la syntaxe suivante :
grep --binary-files=text -i 'RG'
Pistes pour bricoler le contenu d’un PDF
La couleur du texte dans un PDF se fait à l’aide d’une séquence du type 0 0 0 rg
ou 1 0 0 RG
.
Pour obtenir la liste des couleurs vous pouvez utiliser quelque chose comme :
grep --binary-files=text -i ' RG' NOUVEAU_FICHIER_PDF_DECOMPRESSE.PDF | sort | uniq
D’après ce que j’ai compris la couleur est codée en utilisant le concept de rg chromaticity, ce qui ce calcul à l’aide des valeurs RGB comme suit :
Pour aller plus loin
- Dépôts Git-Hub,
- Un peu de Doc sur Wikipédia en anglais,
- rg chromaticity sur Wikipédia en anglais.
ᦿ