Je cherche un moyen d'afficher les métadonnées d'une version de fichier PDF sans avoir à ouvrir le fichier AcrobatPro. Exemple : Version PDF 1.4 : Je peux facilement le faire sur PC : clic droit sur le fichier, propriétés, sélectionnez l'onglet PDF, et il est affiché avec l'application et la bibliothèque pdf qui l'ont produite. Sur Mac, rien de tout cela n'apparaît dans "Obtenir des informations" (commande + I) ni en utilisant le terminal et la commande mdls. Des idées sur certaines commandes et je pourrais écrire un script droplet ?
Réponses
Trop de publicités?Normalement, le numéro de version de la version PDF et d'autres métadonnées devraient être disponibles dans la section "Plus d'infos" de la fenêtre Obtenir des infos. (Cela inclut le titre, l'auteur, le nombre de pages, la taille des pages, les paramètres de sécurité/chiffrement, le créateur de contenu et le logiciel de codage.) Si ce n'est pas le cas, alors votre index Spotlight a probablement besoin d'être réindexé.
Il est possible de interroger les informations de version du PDF directement sans aucun outil tiers. Le script python suivant listera une variété de métadonnées de tout document PDF fourni en argument.
#! /usr/bin/python
# -*- coding: utf-8 -*-
import sys
from Quartz import PDFDocument
from Foundation import NSURL
if __name__ == '__main__':
for filename in sys.argv[1:]:
filename = filename.decode('utf-8')
pdfURL = NSURL.fileURLWithPath_(filename)
pdfDoc = PDFDocument.alloc().initWithURL_(pdfURL)
if pdfDoc:
print "URL:", pdfDoc.documentURL()
metadata = pdfDoc.documentAttributes()
for key in metadata:
print "{}: {}".format(key, metadata[key])
print "Nombre de pages:", pdfDoc.pageCount()
print "Est chiffré:", pdfDoc.isEncrypted()
print "Est verrouillé:", pdfDoc.isLocked()
print "Autorise la copie:", pdfDoc.allowsCopying()
print "Autorise l'impression:", pdfDoc.allowsPrinting()
print "Version: {}.{}".format(pdfDoc.majorVersion(),pdfDoc.minorVersion())
else: print "Impossible d'obtenir ce fichier. (Pas un PDF ? / Mauvais nom de fichier ?)"