Was ist in Adobe Photoshop CC
, eine schnelle Möglichkeit, jeder Ebene in einem Dokument mit einer großen Anzahl von Ebenen (z. B. 100 Ebenen) individuelle Standardmasken (Alle anzeigen) hinzuzufügen ?
Ich brauche Einzelmasken, keine Gruppenmasken.
Ich kann ALT+drag
eine Maske manuell auf andere Ebenen duplizieren oder einfach durch die ausgewählten Ebenen scrollen und dann auf die Maskenschaltfläche am unteren Rand des Layers
Bereichs klicken, aber ich versuche, einen automatisierten Prozess zu erstellen, daher sind dies keine wünschenswerten Optionen.
Vielleicht gibt es eine Skriptlösung, um allen offenen Ebenen individuelle Vollmasken hinzuzufügen?
Gemäß der Problemumgehung hier, um massenhaft png-24
Bilder einer gemeinsamen Größe mit teilweiser Transparenz zu exportieren png-8
, mache ich File
> Scripts
> Load Files Into Stack
, wähle alle Ebenen aus, klicke mit der rechten Maustaste auf die Auswahl und wähle schließlich Quick Export as png-8
aus dem angezeigten Klickoptionsmenü.
Das einzige Problem ist, dass Quick Export as png-8
eine beschnittene Kopie gespeichert wird, ohne die Leinwandgröße zu berücksichtigen. Einzeln hineinzugehen Export As
funktioniert, wenn ich die Leinwandgröße manuell ändere, aber alle Ebenen auswähle und eine gemeinsame Leinwandgröße zentriere die Bilder ...
Aber ich habe einen Weg gefunden, mit der rechten Maustaste Quick Export...
die Leinwandposition zu respektieren und nicht zuzuschneiden – füge eine 100% Füllmaske hinzu (also ganz weiß). Dies hat keine Auswirkung auf das Bild, außer dass der transparente Begrenzungsrahmen vor dem Zuschneiden auf Quick Export...
/ bewahrt wird Export As
.
Das Hinzufügen einzelner Masken macht jedoch die individuelle Zeitersparnis zunichte. Daher muss ich einen Weg finden, sie schnell zu jeder Ebene hinzuzufügen (Gruppenmaske funktioniert nicht).
Ich denke, der einfachste Weg wäre, eine Aktion mit einer zugewiesenen F-Taste zu erstellen. Sie müssen immer noch eine Taste drücken ... aber es wäre schneller.
Layer > Layer Mask > Reveal All
[
) – Dies sollte die nächste Ebene im Ebenenstapel hervorhebenMarkieren Sie nun eine Ebene, tippen Sie auf die zugewiesene F-Taste ... und tippen Sie weiter, bis Sie das untere Ende des Ebenenstapels erreichen.
Ich bin mir sicher, dass dies auch per Skript möglich wäre, aber das liegt außerhalb meines Steuerhauses.
Ich habe hier ein Skript gefunden, das jeder Ebene eine "Alle ausblenden"-Ebenenmaske hinzufügt
Also habe ich ein bisschen mehr gegraben und herausgefunden, wie ich es von „Alle verbergen“ auf „Alle anzeigen“ ändern kann.
Bitte schön:
// RevealMask-AllLayers – Adds a 'Reveal All' mask to all layers
#target photoshop
if(app.documents.length>0){
var docRef = activeDocument;
var layerNum = docRef.layers.length;
for(var i=0;i<layerNum;i++){
docRef.activeLayer = docRef.layers[i];
if(!docRef.activeLayer.isBackgroundLayer){
try{addMask ()}
catch(e){}
}
}
}
else{alert('There are no open files')};
function addMask(){
var idMk = charIDToTypeID( "Mk " );
var desc2 = new ActionDescriptor();
var idNw = charIDToTypeID( "Nw " );
var idChnl = charIDToTypeID( "Chnl" );
desc2.putClass( idNw, idChnl );
var idAt = charIDToTypeID( "At " );
var ref1 = new ActionReference();
var idChnl = charIDToTypeID( "Chnl" );
var idChnl = charIDToTypeID( "Chnl" );
var idMsk = charIDToTypeID( "Msk " );
ref1.putEnumerated( idChnl, idChnl, idMsk );
desc2.putReference( idAt, ref1 );
var idUsng = charIDToTypeID( "Usng" );
var idUsrM = charIDToTypeID( "UsrM" );
var idHdAl = charIDToTypeID( "RvlA" );
desc2.putEnumerated( idUsng, idUsrM, idHdAl );
executeAction( idMk, desc2, DialogModes.NO );
}