roik 发表于 2023-10-17 17:13:53

丝印转曲,并另存为AI,PDF,CAD文件


如图所示,用于使用ai做工程类文件时,无需另存文件进行转曲,并转格式为PDF、DWG,而是一键转出转曲后的ai,PDF,DWG;
使用JavaScript编写,默认保存位置为桌面

// 获取当前文档的文件名
var currentFileName = app.activeDocument.name;

// 将文本转换为轮廓
var outlineText = function (doc) {
var textFrames = doc.textFrames;
for (var i = textFrames.length - 1; i >= 0; i--) {
    var textFrame = textFrames;
    textFrame.createOutline();
}
};

// 将线条转换为轮廓
/*var outlineStrokes = function (doc) {
var paths = doc.pathItems;
for (var i = paths.length - 1; i >= 0; i--) {
    var path = paths;
    if (path.stroked) {
      path.strokeWidth = 0;
    }
}
};   */

// 导出为AI
var exportToAI = function (folderPath) {
var aiOptions = new IllustratorSaveOptions();
var aiFile = new File(folderPath + "/" + currentFileName.replace(/\.ai$/i, "") + "-转曲" + ".ai");
if (aiFile.exists) {
    var overwrite = confirm("已存在同名文件,是否要覆盖?");
    if (!overwrite) {
      alert("导出被取消。");
    } else {
      outlineText(app.activeDocument);
      //outlineStrokes(app.activeDocument);
      app.activeDocument.saveAs(aiFile, aiOptions);
      alert("AI文件导出成功!");
    }
} else {
    outlineText(app.activeDocument);
    //outlineStrokes(app.activeDocument);
    app.activeDocument.saveAs(aiFile, aiOptions);
    alert("AI文件导出成功!");
}
};

// 导出为PDF
var exportToPDF = function (folderPath) {
var pdfOptions = new PDFSaveOptions();
pdfOptions.preset = "PDF/X-4:2008";
var pdfFile = new File(folderPath + "/" + currentFileName.replace(/\.ai$/i, "") + ".pdf");
if (pdfFile.exists) {
    var overwrite = confirm("已存在同名文件,是否要覆盖?");
    if (!overwrite) {
      alert("导出被取消。");
    } else {
      app.activeDocument.saveAs(pdfFile, pdfOptions);
      alert("PDF文件导出成功!");
    }
} else {
    app.activeDocument.saveAs(pdfFile, pdfOptions);
    alert("PDF文件导出成功!");
}
};

// 导出为DWG
var exportToDWG = function (folderPath) {
var dwgOptions = new ExportOptionsAutoCAD();
dwgOptions.version = AutoCADCompatibility.AutoCADRelease14;
dwgOptions.exportSelectedArtOnly = false;
dwgOptions.convertTextToOutlines = true;
var dwgFile = new File(folderPath + "/" + currentFileName.replace(/\.ai$/i, "") + ".dwg");
if (dwgFile.exists) {
    var overwrite = confirm("已存在同名文件,是否要覆盖?");
    if (!overwrite) {
      alert("导出被取消。");
    } else {
      app.activeDocument.exportFile(dwgFile, ExportType.AUTOCAD, dwgOptions);
      alert("DWG文件导出成功!");
      alert("将要关闭文件");
    }
} else {
    app.activeDocument.exportFile(dwgFile, ExportType.AUTOCAD, dwgOptions);
    alert("DWG文件导出成功!");
    alert("将要关闭文件");
}
};


// 导出为AI
var aiFolder = Folder.selectDialog("选择AI保存路径");
if (aiFolder != null) {
exportToAI(aiFolder);
}

// 导出为PDF
var pdfFolder = aiFolder;
if (pdfFolder != null) {
exportToPDF(pdfFolder);
}

// 导出为DWG
var dwgFolder = pdfFolder;
if (dwgFolder != null) {
exportToDWG(dwgFolder);
}

// 关闭文档
app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);







roik 发表于 2023-10-18 08:09:24

逆风2015 发表于 2023-10-17 19:27
支持原创,多多出新作,多种格式保存还是第一次。

没什么技术含量在里面,就是在做完纯矢量文件后,保存的时候,先自动进行转曲,然后保存一份转曲的ai,然后在转曲ai的基础上,将文件再保存为PDF,保存成PDF后再保存一份DWG,执行完成后关闭文件;只是把手动的过程变成一系列自动的过程

逆风2015 发表于 2023-10-17 19:27:08

支持原创,多多出新作,多种格式保存还是第一次。
页: [1]
查看完整版本: 丝印转曲,并另存为AI,PDF,CAD文件