我正在尝试从 Mac Paint Pro 软件 (https://apps.apple.com/us/app/paint-pro/id592666912?mt=12) 打开 .paint 文件,同时保留创建的图层。在下面来自 Mac Paint Pro 软件的屏幕截图中,您可以看到图像上的彩色矩形作为左侧列中显示的图层。
我尝试在 Photoshop 中打开它,但无法打开 .paint 文件。该软件可以导出多种格式。然而,大多数将文件压平为单层。
我尝试将 .paint 文件导出为 .tiff 以在 Photoshop 中打开,因为我听说 .tiff 文件可以包含图层。但是,当我在 Photoshop 中打开该 .tiff 文件时,该文件与其他格式一样被压缩为单层。这是 tiff 文件:
我在这里发帖,看看是否有人对如何 a.) 打开包含不同软件中的图层的 .paint 文件和/或 b.) 如何以不同的格式导出 .paint 文件(选项见上图)应保留 .paint 文件中包含的图层。我认为这可能是一个特定于软件的问题,我愿意接受任何和所有建议。非常感谢您的宝贵时间。
您可以用它将图像加载到堆栈中。还有其他脚本。我认为您可以使用内置图像处理器将单个图像加载为 PSD。但我不认为你可以向图层添加大量图像。
您需要注意的是确保图像以相同的尺寸导出 - 这样它们之后就会在同一位置堆叠在一起。如果这有道理的话。
// Description: Loads jpg/png/tif images into stack from one
// directory.
// Layers are renamed after the image
// layers are order alphabetically
//
// USE AT YOUR OWN RISK
// Switch off any dialog boxes
displayDialogs = DialogModes.NO; // OFF
var baseDocCreated = false;
var baseImage = "";
var imageRes = 72;
var inFolder = Folder.selectDialog("Please select FOLDER to process");
if (inFolder != null)
{
var fileList = inFolder.getFiles(/\.(png|jpeg|jpg|tif)$/i);
}
var num = fileList.length;
alert(num + " images to process into stack from\n" + inFolder);
// main loop starts here
for(var a = 0; a < fileList.length; a++)
{
// load the frames one by one
var doc = open(fileList[a]);
var tempImage = app.activeDocument.name
//create the base document to work with
if (baseDocCreated == false)
{
imageW = app.activeDocument.width.value;
imageH = app.activeDocument.height.value;
imageName = "baseDoc";
create_new_document(imageW, imageH, imageRes, imageName)
}
var moveTo = app.documents.getByName(baseImage);
var moveFrom = app.documents.getByName(tempImage);
move_image(moveTo, moveFrom)
//close without saving
app.activeDocument.close(SaveOptions.DONOTSAVECHANGES);
srcDoc = app.activeDocument;
var rename = remove_extension(tempImage);
app.activeDocument.activeLayer.name = rename;
}
var nice = fileList[0].toString();
nice = remove_extension(imageName)
app.activeDocument.activeLayer.name = nice;
// Set Display Dialogs back to normal
displayDialogs = DialogModes.ALL; // NORMAL
// FUNCTIONLAND
// --------------------------------------------------------
function create_new_document(w, h, res, aname)
{
// alert(w + "\n" + h + "\n" + res + "\n" + aname)
var docRef = app.documents.add(w, h, res, aname)
baseImage = "baseDoc";
baseDocCreated = true;
srcDoc = app.activeDocument;
}
function move_image(to, from)
{
//select the tempImage
app.activeDocument = from;
// move from tempImage to the baseImage
var duplicateLayer = activeDocument.activeLayer.duplicate(to)
}
function remove_extension (str)
{
return str.substring(0, str.lastIndexOf("."));
}