Estoy tratando de crear un flujo de trabajo de Automator para exportar seleccionados Páginas de documentos a PDF. Hasta ahora, todo va bien, salvo por el final de la exportación.
on run {input, parameters}
repeat with _document in input
tell application "Finder"
set _directory to get container of file _document
set _documentName to name of _document
if _documentName ends with ".pages" then ¬
set _documentName to text 1 thru -7 of _documentName
set _PDFName to _documentName & ".pdf"
set _incrementIndex to 1
repeat until not (exists file _PDFName of _directory)
set _PDFName to ¬
_documentName & "-" & (_incrementIndex as string) & ".pdf"
set _incrementIndex to _incrementIndex + 1
end repeat
set _location to (_directory as string) & _PDFName
end tell
--set _location to (POSIX file of _location)
tell application "Pages"
activate
open _document
with timeout of 1200 seconds
export front document to file _location as PDF
end timeout
close front document
end tell
end repeat
return input
end run
Esto me da una caja de arena error de permisos.
error 17:49:38.117966 +0100 sandboxd SandboxViolation: Pages(3846) deny file-write-create /Users/brunoscheele/Desktop/Test.pdf
Violation: deny file-write-create
Después de leer sobre él aquí, que parecía que podría solucionar este problema, cambie _location
a POSIX file
.
Así que he añadido;
--set _location to (POSIX file _location)
Sin embargo, para que luego me da el error:
Las páginas de un error: "macOS:Usuarios:brunoscheele:Escritorio:de Prueba.pdf" no podría ser interpretado como una dirección URL del archivo.
El uso de export front document to (POSIX file _location) as PDF
me da el mismo error.
¿Alguien sabe cómo establecer el _location
correctamente, para que no se quede en problemas de permisos?