• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
6

How can I make a script that uses the Auto Align Layers

New Here ,
Aug 17, 2023 Aug 17, 2023

Copy link to clipboard

Copied

I keep trying but it just comes up with Error 8800: General Photoshop error occured. This functionality may not be available in this version of Photoshop. - The command "<unknown>" is not currently available.

This is always happening with this code on the executeAction line.

 

// Run Auto-Align Layers on all layers in the new document using Perspective projection
         var idautoAlignLayers = stringIDToTypeID("autoAlignLayers");
         var desc2 = new ActionDescriptor();
         var idprojection = stringIDToTypeID("projection");
         desc2.putInteger(idprojection, 3); // Perspective projection
         executeAction(idautoAlignLayers, desc2, DialogModes.NO);

 

 I think it must be a bug because there's no other reason. I have it all set up properly, with two layers selected.

 

TOPICS
Actions and scripting , Windows

Views

213

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe
Community Expert ,
Aug 17, 2023 Aug 17, 2023

Copy link to clipboard

Copied

I will tag a few scripters that can help you. Next time add scripting tag to your question.

@c.pfaffenbichler @Stephen_A_Marsh @jazz-y @r-bin 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Aug 18, 2023 Aug 18, 2023

Copy link to clipboard

Copied

What code do you get when you record the operation with ScriptingListener.plugin? 

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Aug 18, 2023 Aug 18, 2023

Copy link to clipboard

Copied

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Mar 23, 2024 Mar 23, 2024

Copy link to clipboard

Copied

LATEST

Hi! 
I am following and hoping for help.

@Stephen_A_Marsh the link did not help in my case. I was just trying to automate the aligning and blending of layers. As I was not able to realise it in a simple Javascript I started to use UXP to write it. Sadly I get the same error like the thread starter, 8800 general Photoshop error.
Anyone able to help?

document.addEventListener("DOMContentLoaded", () => {
    const alignButton = document.getElementById("alignLayersBtn");
    const populateButton = document.getElementById("populateLayersBtn");
    
    if (alignButton) {
        alignButton.addEventListener("click", alignLayersAutomatically);
    }
    if (populateButton) {
        populateButton.addEventListener("click", populateLayers);
    }
});

async function alignLayersAutomatically() {
    require('photoshop').core.executeAsModal(async () => {
        try {
            console.log("Starte automatische Ausrichtung der Ebenen");
            const result = await require('photoshop').action.batchPlay([
                {
                    "_obj": "autoAlignLayers",
                    "_target": [{ "_ref": "layer", "_enum": "ordinal", "_value": "targetEnum" }],
                    "autoAlignType": { "_enum": "autoAlignType", "_value": "auto" }
                }
            ], {});
            console.log("Ebenen ausgerichtet: ", result);
            await showAlert("Ebenen wurden erfolgreich ausgerichtet!");
        } catch (error) {
            console.error("Fehler beim Ausrichten der Ebenen: ", error);
            await showAlert("Fehler beim Ausrichten der Ebenen. Siehe Konsole für Details.");
        }
    }, {commandName: "alignLayersAutomatically"});
}

async function populateLayers() {
    try {
        const app = require("photoshop").app;
        const layers = app.activeDocument.layers;
        const layerNames = layers.map(layer => layer.name);
        const layerListElement = document.getElementById("layerList");
        layerListElement.innerHTML = "<ul>" + layerNames.map(name => `<li>${name}</li>`).join("") + "</ul>";
    } catch (error) {
        console.error("Fehler beim Auflisten der Ebenen: ", error);
        await showAlert("Fehler beim Auflisten der Ebenen. Siehe Konsole für Details.");
    }
}

async function showAlert(message) {
    await require('photoshop').core.showAlert({message});
}

 Let me know if I can provide further info.

To my defense: I am not able to code properly (but willing to listen and learn), this is me plus chatGPT.
Thanks a lot!

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines