4 votes

Automatiser l'impression avec des options ?

J'essaie d'imprimer un fichier (un pdf), sans intervention. Ce n'est pas spécifique à Automator, je peux m'occuper d'applescript ou de terminal ou de n'importe quoi d'autre. Les spécificités de ce que je veux sont les suivantes :

  • Imprimer sur une imprimante spécifique
  • Impression à un format de page spécifique (non standard)
  • Auto-rotation (en option)
  • Adapter l'échelle, imprimer toute la page (109 à 112%. 110% fonctionne)

Je peux le faire manuellement via le menu d'impression de Preview, seule la taille de la page n'est pas par défaut, mais je veux l'automatiser, par glisser-déposer, d'une manière ou d'une autre.

Ce que j'ai essayé :

  1. Si j'imprime à partir du Finder, l'aperçu est utilisé, mais il est trop grand et la taille de la page n'est pas la bonne.
  2. Si je le glisse sur l'imprimante dans ~/Bibliothèque/Printers/printername, c'est comme si j'utilisais LP, mais sans les options.
  3. Les options d'impression d'Applescript sont mal documentées.
  4. L'option "Imprimer les éléments du Finder" d'Automator est similaire au numéro 1.
  5. L'option "Imprimer les images" d'Automator fonctionne comme l'aperçu, mais l'option "Adapter l'échelle" ne fonctionne pas comme l'aperçu, je ne peux pas choisir la taille de la page et l'option "Rotation automatique" ne fonctionne pas du tout.
  6. Si j'imprime à partir du terminal via LP ou LPR, je peux définir la taille de la page et l'orientation/adaptation à la page, mais je ne peux pas l'agrandir à 110%. C'est ce qui se rapproche le plus de ce que je veux.

Comment faire ? Cela ne devrait pas être si difficile, je veux faire ce que l'interface graphique peut faire, pas comme si je voulais des fonctionnalités supplémentaires.

Dans le pire des cas, comment puis-je émuler le contrôle de la souris ou du clavier sur le menu d'impression de Preview ? Il suffirait de 1. ouvrir un fichier, 2. faire apparaître le menu d'impression, 3. passer à un préréglage ou à une taille de page, comme toutes les autres options y compris la mise à l'échelle sont par défaut ., 4. appuyez sur print/enter.

3voto

Graham Miln Points 39606

Divisons le problème en deux parties : la mise à l'échelle et l'impression.

Mise à l'échelle

Vous pouvez mettre à l'échelle un PDF à partir de la ligne de commande. Pensez à créer un PDF temporaire, mis à l'échelle, pour l'imprimer.

Voir Mise à l'échelle du contenu du PDF et des dimensions des pages à partir de la ligne de commande pour des suggestions d'approches à ce sujet. La réponse la plus votée suggère d'utiliser cpdf avec une commande comme :

cpdf -scale-page "1.1 1.1" in.pdf -o out.pdf

Un autre outil est sips . Cet outil est inclus dans OS X et est étonnamment performant.

Impression

Comme vous l'avez découvert, le système d'impression d'OS X est le système Système d'impression commun à Unix (CUPS). CUPS comprend l'outil en ligne de commande lpr qui peut accepter tous les réglages et options vous avez besoin.

Pour imprimer le PDF via la ligne de commande, voir :

Pour dresser la liste des imprimantes disponibles, utilisez :

lpstat -p -d

Pour imprimer un fichier PDF sur l'imprimante par défaut, utilisez :

lpr file.pdf

0voto

cde Points 581

Ce que j'ai fini par faire, c'est d'utiliser open y osascript ainsi que un outil pdfcrop de l'utilisateur du forum de MacRumor Oligarque (Wayback Machine backup to archives )

./pdfcrop /path/to/file.pdf -u in -p 6.68 1.82 -a tr -o 0.14 0.23 > ./0.pdf && \
./pdfcrop /path/to/file.pdf -b m -u in -p 3.30 1.82 -a tr -o 0.14 0.23 > ./1.pdf && \
./pdfcrop /path/to/file.pdf -b m -u in -p 3.38 1.78 -a tr -o 3.43 0.24 > ./2.pdf && \
open ./1.pdf ./2.pdf && \
osascript -e 'tell application "Finder" to delete POSIX file "'/path/to/file.pdf'"' -e 'tell application "Finder" to delete POSIX file "'./1.pdf'"' -e 'tell application "Finder" to delete POSIX file "'./2.pdf'"'
  1. Il prend le fichier original et crée trois copies. Une avec le pdf recadré à la taille (boîte de recadrage, non destructive) que je conserve, et deux recadrées à la taille (boîte de média) qui sont temporaires.
  2. Il les ouvre ensuite avec Aperçu, sous forme de deux pages/fichiers dans la même fenêtre.
  3. Il demande ensuite au Finder, via Applescript, de supprimer les fichiers temporaires, dans un Finder, se déplacent à la manière d'une corbeille. La même chose que si je -Delete les dossiers.
  4. Une fois dans l'aperçu, je peux -P pour imprimer les deux fichiers. La seule chose que je dois faire est de changer la taille du papier, l'aperçu se chargeant de la mise à l'échelle.

Bien sûr, il ne fait pas tout ce que je veux, mais il permet de réduire le nombre de recadrages manuels et d'allers-retours pour s'assurer que tout ce que je dois imprimer l'est.

Puisque CPDF peut mettre à l'échelle et recadrer, il devrait être plus facile de faire tout cela via la ligne de commande. Il ne me reste plus qu'à le tester.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X