草图应用程序的苹果脚本



我正试图为草图写一个Apple Script。app (com.bohemiancoding.sketch3)。我想做的是,创建一些图像文件,可以在浏览器中渲染草图文档。

和当我打开草图。app dictionary in Script Editior i see

saveable file format enum
    Sketch : The native Sketch 2 file format
    PDF : Portable Document Format
    TIFF : Tagged Image File Format

所以我想用下面的脚本生成TIFF,但它没有工作

tell application "Sketch"
  set curdoc to document 0    
  save curdoc in "/Users/mirza/Downloads/mew2" as TIFF
end tell

我可以用保存命令创建.sketch格式的草图副本,但不是PDF或TIFF。sketch是否支持使用苹果脚本的PDF和TIFF ?

或者还有其他方法吗?

我将路径更改为apple script格式,并设置文档索引为1。现在脚本看起来像这样

set thisFilePath to (POSIX file "/Users/mirza/Downloads/mew2")
log thisFilePath
tell application "Sketch"
    curdoc to document 1
    save curdoc in thisFilePath as TIFF -- Tried with quotes as well, gives same error
end tell

但是当我运行脚本时,我得到了以下错误

Result:
error "Sketch got an error: Can’t continue curdoc." number -1708

更新2

固定错误

set thisFilePath to (POSIX file "/Users/mirza/Downloads/mew2")
log thisFilePath
tell application "Sketch"
    set curdoc to document 1
    log (path of curdoc)
    save curdoc in thisFilePath as "TIFF"
end tell

但是当我运行脚本时,我得到了以下错误

Result:
error "Sketch got an error: The document cannot be exported to the "TIFF" format." number -50

您的代码有很多问题,但是,首先,您会发现使用不再可用的软件很难得到明确的答案。Sketch版本3已经有一段时间了,AppleScript字典可能也发生了变化。话虽如此,这里有一些关于代码的想法:

如果这是Sketch 2 AS字典读取的内容,那么在v3中AS功能发生了变化。我很想帮忙,但是我到处找不到v2,所以我只能在黑暗中做这件事。

set thisFilePath to choose file name--use this to select a new file;
------- a Mac AppleScript path is returned (a file specification,
------- actually, which is different from a string or alias
------- (but an alias is kind of like a file spec)
tell application "Sketch"
    set curdoc to document 1--not zero-based; 1 is frontmost doc
    save curdoc in thisFilePath as "TIFF"--*this is a guess
end tell

所以,我不知道最后的save行会做什么,但它可能会工作。在Sketch 3中,"TIFF"格式不允许保存,但它确实有一个as参数作为保存的一部分,它应该与表示格式的文本字符串配对(如"TIFF",上面)。草图2似乎有一个不同的方案(as的参数不是字符串)。如果我在Sketch 3中保存没有as参数,它以Sketch的本机格式保存。所以你可以尝试不加引号(就像你所做的那样)。我只是在做v3字典告诉我要做的。以下是一些解决方案和技巧:

  1. document 1应该工作引用最前面的文档;

  2. 如果出于某种原因你想用POSIX写出你的路径(就像你所做的那样),你可以使用

    POSIX文件"/Users/mirza/Downloads/mew2"

返回AppleScript的mac样式路径,格式如下:

"yourHardDriveName:Users:mirza:Downloads:new2"

你也可以得到我这里的"yourHardDriveHame:"通过执行

tell application "Finder" to set sDr to startup disk as string

然后连接

sDr & "Users:mirza:Downloads:new2"

你也可以做

tell application "Finder" to set myHome to home as string

返回主文件夹的mac样式路径。(是的,Finder也允许你找到其他路径)。

有一些东西可以玩

相关内容

  • 没有找到相关文章

最新更新