Conversion TXT -> PDF via AppleScript
Le
newsSP

Bonjour,
À la recherche d'un script qui me permette à la volée de convertir
des fichiers (principalement *.txt) en PDF (sans passer par
Fichier->Imprimer->PDF.
Suis tombé sur ce script ancien :
<https://github.com/github/linguist/blob/master/samples/AppleScript/Conv
ert%20To%20PDF.applescript>
Mais qui génère l'erreur :
--> error "sh: /System/Library/Printers/Libraries/./convert: No such
file or directory" number 127
Quelqu'un ici connaitrait-il le bon chemin (sous Mountain Lion)?
Et accessoirement, quelles instructions ajouter dans le code pour
protéger les PDFs par mot de passe
D'avance, merci,
--
(_/) Jo
°o°
m m "Don't suffer from insanity, enjoy every minute of it."
À la recherche d'un script qui me permette à la volée de convertir
des fichiers (principalement *.txt) en PDF (sans passer par
Fichier->Imprimer->PDF.
Suis tombé sur ce script ancien :
<https://github.com/github/linguist/blob/master/samples/AppleScript/Conv
ert%20To%20PDF.applescript>
Mais qui génère l'erreur :
--> error "sh: /System/Library/Printers/Libraries/./convert: No such
file or directory" number 127
Quelqu'un ici connaitrait-il le bon chemin (sous Mountain Lion)?
Et accessoirement, quelles instructions ajouter dans le code pour
protéger les PDFs par mot de passe
D'avance, merci,
--
(_/) Jo
°o°
m m "Don't suffer from insanity, enjoy every minute of it."
Dans le Finder tu recherche "convert" sur "ce Mac" comme "nom de fichier"
Sinon Tu ouvres un Terminal et tu tapes :
sudo find /System -name convert
tu valides, il te demande ton mot de passe, et il cherche (ça peut être
un peu long)
et il revient bredouille :(
cherché sur une machine sous Snow Leo, "convert" est un alias vers
"/usr/sbin/cupsfilter" qui existe aussi sous ML
changé le chemin dans le script, qui produit alors :
--> error "cupsfilter: Invalid job ID 0." number 1
Merci pour la piste, je cherche dans "man cupsfilter"
--
(_/) Jo
°o°
m m "Don't suffer from insanity, enjoy every minute of it."
Essaye celui-là qui fonctionne par D&D :
on open theFiles
set oldTID to AppleScript's text item delimiters
repeat with thisFile in theFiles
-- get file path as posix path
set inputFilePath to POSIX path of thisFile
-- create output path - same name with .pdf extension
set AppleScript's text item delimiters to "."
set outputFilePathBits to text items of inputFilePath
set last text item of outputFilePathBits to "pdf"
set outputFilePath to outputFilePathBits as text
-- create convert command and send to shell
set AppleScript's text item delimiters to " "
set cmdList to {"/System/Library/Printers/Libraries/convert", "-f",
quoted form of inputFilePath, "-o", quoted form of outputFilePath}
do shell script (cmdList as text)
end repeat
set AppleScript's text item delimiters to oldTID
end open
Source : daté de 2011.
--
"La théorie, c'est quand on sait tout et que rien ne fonctionne. La
pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.
Ici, nous avons réuni théorie et pratique : Rien ne fonctionne... et
personne ne sait pourquoi !" [ Albert Einstein ]
Le chemin est /System/Library/Printers/Libraries/convert
--
"La théorie, c'est quand on sait tout et que rien ne fonctionne. La
pratique, c'est quand tout fonctionne et que personne ne sait pourquoi.
Ici, nous avons réuni théorie et pratique : Rien ne fonctionne... et
personne ne sait pourquoi !" [ Albert Einstein ]
C'est pareil
Je l'avais essayé aussi, même motif, même punition :(
(cf. ma réponche à Pehache
du coup, je suis parti sur ce script, qui "marche" mais dont le
résultat est perfectible du point de vue cosmétique :
8<---
#!/bin/bash
for file in *.txt ; do
filename=$(basename "$file")
/usr/sbin/cupsfilter "$file" > "$filename.pdf"
done
8<---
Merci des pistes et bone journée,
--
(_/) Jo
°o°
m m "Don't suffer from insanity, enjoy every minute of it."