2
activeDocument.fitArtboardToSelectedArt()

调用此命令时,AI 在 AI 5.1/6 32bit 和 64bit 版本上崩溃。我可以使用菜单中的命令。有没有人遇到过这个?有人知道解决方法吗?

完整的代码。

    function exportFileToJPEG (dest) {
    if ( app.documents.length > 0 ) {

        activeDocument.selectObjectsOnActiveArtboard()
        activeDocument.fitArtboardToSelectedArt()//crashes here
        activeDocument.rearrangeArtboards()

        var exportOptions = new ExportOptionsJPEG();
        var type = ExportType.JPEG;
        var fileSpec = new File(dest);
        exportOptions.antiAliasing = true;
        exportOptions.qualitySetting = 70;
        app.activeDocument.exportFile( fileSpec, type, exportOptions );
    }
}
var file_name = 'some eps file.eps'
var eps_file = File(file_name)


var fileRef = eps_file;



if (fileRef != null) {
    var optRef = new OpenOptions();
    optRef.updateLegacyText = true;
    var docRef = open(fileRef, DocumentColorSpace.RGB, optRef);
}

exportFileToJPEG ("output_file.jpg")
4

1 回答 1

6

我可以用 AI CS5 重现这个错误。

似乎fitArtboardToSelectedArt()将画板的索引作为可选参数。设置参数后,Illustrator 不会崩溃。(可能是代码中处理不传参数情况的一个bug)

作为一种解决方法,您可以使用:

activeDocument.fitArtboardToSelectedArt(
               activeDocument.artboards.getActiveArtboardIndex()
                                       );

将活动画板的索引传递给函数。希望这对你也有效。

此外,最好不要在语句末尾省略分号。

于 2012-07-17T20:14:15.507 回答