Applescript для определения (если / затем) типа файла и выбора правильной программы для открытия и печати файла (в пределах последовательности пакетов)
Я собрал вместе appleScript с большой помощью @chuck и других сообщений на доске объявлений, чтобы эффективно распечатать пакет файлов, экспортированных из контейнеров файлового производителя, в папку «print» на моем рабочем столе.
Проблема, с которой я сейчас сталкиваюсь, заключается в том, что некоторые из этих контейнерных экспортов не являются PDF (это смесь Jpg, PNG, Tif и PDF) и не будут открываться с помощью acrobat (использование предварительного просмотра для PDF или любого другого средства просмотра PDF не доступно. вопрос по множеству причин) ... Эта проблема фактически закрывает рабочий процесс из-за сообщений об ошибках от acrobat, которые необходимо вручную отключить, прежде чем скрипт перейдет к следующему файлу.
Мой вопрос заключается в том, можно ли по команде applecript сначала определить тип файла и выбрать другую программу, чтобы открыть документ и вызвать команду печати и закрыть окно, прежде чем перейти к следующему документу в последовательности.
(т. е. если .pdf, то использовать acrobat print close window, если не использовать превью для открытия файла, print закрыть окно, повторять до тех пор, пока все файлы не будут напечатаны.)
Ниже мой текущий рабочий код.(FYI) Этот сценарий выполняется в сценарии создателя файла, который создает папку «Печать» на рабочем столе и экспортирует поля контейнера в папку.
`set myFolder to (path to desktop folder as text) & "Print:"
set myfiles to list folder myFolder without invisibles
repeat with myfile in myfiles
set mycurrentfile to ((myFolder as string) & (myfile as string)) as string
batchprint(mycurrentfile)
end repeat
on batchprint(mycurrentfile)
tell application "Adobe Acrobat Pro"
activate -- bring up acrobat
open alias mycurrentfile -- acrobat opens that new file
tell application "System Events"
tell process "Acrobat"
click menu item "Print..." of menu 1 of menu bar item "File" of menu bar 1
click button "Print" of window "Print"
tell application "System Events"
tell process "Acrobat"
click menu item "Close" of menu 1 of menu bar item "File" of menu bar 1
end tell
end tell
end tell
end tell
end tell
tell application "Finder" -- to move the printed file out
set x to ((path to desktop folder as text) & "Printed PDFs:")
if alias x exists then
beep
else
make new folder at the desktop with properties {name:"Printed PDFs"}
end if
move alias mycurrentfile to folder "Printed PDFs"
end tell
конец отпечатка