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

Scripts disappearing with every Photoshop update

New Here ,
Aug 31, 2020 Aug 31, 2020

Copy link to clipboard

Copied

Hello, I'm having issues with Image Processing -> Scripts. I record an action script for watermarking photos. I saved the script and use it several times a day for work. However, every time there is a major update with Photoshop the script for watermarking that I made disappears and I have to remake it every single time. Is there a way to save scripts so that they are not lost with every single Photoshop update?

TOPICS
Windows

Views

812

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

correct answers 1 Correct answer

Community Expert , Sep 01, 2020 Sep 01, 2020

Once you put the actions in a set you need to save them as a preset. Then you can either load them or import them, as JJ mentioned.

action save.jpg

Votes

Translate

Translate
Adobe
Community Expert ,
Sep 01, 2020 Sep 01, 2020

Copy link to clipboard

Copied

If you are talking about actions. Where you record your steps, as opposed to scripts, where you write code, then you need to save the actions to an action set. That way you can load them, when you install a new version of PS.

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 ,
Sep 01, 2020 Sep 01, 2020

Copy link to clipboard

Copied

Chuck, yes these are Actions. I first create a new Action set, I'll name it something unqiue. Then I'll create a new action, name it 'watermark', under the newly created action set. Do a series of actions and hit save. Then under File -> Scripts -> Image Processor, select the folders with the images I want watermarked, select how I want it saved, and select the newly created action from the new action set, click run and I'm off to the races. I use this process for work about 1-4 times daily. So I know that it works. However, everytime there is a major PS update my saved actions and action sets, are all missing, and I have to recreate them... everytime. This is about the 7th or 8th time I've had to remake my watermark actions. What I'm looking for is a way to export these acitons, preserve and save them, have them live somewhere on my computer in a file and import them to PS after the next major update erases my premade actions. 

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 ,
Sep 01, 2020 Sep 01, 2020

Copy link to clipboard

Copied

When you install a new version  of Photoshop the first time you use it you should ask If you if want yo migrate old Photoshop version stuff.  If you doe you Action Palette should be migrated.  Your Actions should be there.  However if you have to reset your Preferences  you may loose your Actions Palette setup so you should always save you Action Sets to you own private Actions folder so you can load the back into the Actions palette should you loose them.  You can re migrate your Action Palette but if you have made updates you better off loading them from your Actions folder.

image.png 

JJMack

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 ,
Sep 01, 2020 Sep 01, 2020

Copy link to clipboard

Copied

Install Your scripts in you own scripts folder then link all photoshop versions installed scripts  folder  to your script folder.  That way you only need to maintain a single copy of your scripts.  Actions are a different story.  You should always save your Actions sets into  your  own private action folder and also load them into the actions palette from your Action folder.   However, your actions in the Actions Palette are in your UserID  Photoshop Version's Preferences folder.  You can migrate these to new Photoshop  versions. however you have the keep them in sync yourself Adobe doe not keep old Photoshop versions in sync. 

 

Here is my Watermak script PlaceWatermark.jsx you cahe the vars to customize it.

/* ==========================================================
// 2017  John J. McAssey (JJMack) 
// ======================================================= */
// This script is supplied as is. It is provided as freeware. 
// The author accepts no liability for any problems arising from its use.
/*
<javascriptresource>
<about>$$$/JavaScripts/PlaceWatermark/About=JJMack's PlaceWatermark ^r^rCopyright 2017 Mouseprints.net^r^rPhotoshop Script^rCustomize using first four var</about>
<category>JJMack's Script</category>
<enableinfo>true</enableinfo>
</javascriptresource>
*/
#target photoshop;  
app.bringToFront();  
var logoFile = "~/Desktop/JJMack.png";						// Watermark file should be large for resize down works better than up
var LogoSize = 10;											// percent of document height to resize Watermark to
var LogoMargin = 1;                                         // percent of Document height the Watermark should have as a margin
var BottomLetf = false;										// false = Bottom Right true Bottom Left 
//placeWatermark(logoFile, LogoSize, LogoMargin);           // Place Watermark into the bottom of the document
if (documents.length) app.activeDocument.suspendHistory('placeWatermark','placeWatermark(logoFile,LogoSize,LogoMargin)' );
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
function placeWatermark(Image,Size,Margin){  
	if(!documents.length) return;  							// if no document return
		var fileObj = new File(Image);	                	// the passed file
	if(!fileObj.exists){  									// If file does not exits tell user 
		alert(fileObj.name  + " does not exist!"); 			// Alert User 
		return;  											// return
		}  
	try{  
		var doc = app.activeDocument;						// set Doc object to active document
		app.displayDialogs = DialogModes.NO;				// Dialog off 
		var strtRulerUnits = app.preferences.rulerUnits;	// Save Users ruler units 
		var strtTypeUnits = app.preferences.typeUnits;		// Save Users Type units 
		app.preferences.rulerUnits = Units.PIXELS;			// work with pixels 
		app.preferences.typeUnits = TypeUnits.PIXELS;		// work with pixels 
		var layers = app.activeDocument.layers;				// get layers
		app.activeDocument.activeLayer = layers[0];			// Target Top Layer
		placeFile(fileObj); 								// Place in file the Watermark png file
		activeDocument.activeLayer.resize(100 ,100,AnchorPosition.MIDDLECENTER); // Insure Place did not scale layer  
		var SB = activeDocument.activeLayer.bounds; 		// get layers bounds 
		var layerHeight = SB[3] - SB[1];					// get layers height  
		var resizePercent = (100/layerHeight)*(Size/100*doc.height.value); // Percent to resize by 
		activeDocument.activeLayer.resize(resizePercent ,resizePercent,AnchorPosition.MIDDLECENTER);  // Resize width and height by percentage 
		SB = activeDocument.activeLayer.bounds;				// get resized layers bounds  
		activeDocument.activeLayer.translate(-SB[0].value,-SB[1].value); // Move resized layer to top left canvas corner 
		var LayerWidth = (SB[2].value - SB[0].value);		// get resized layers width  
		var LayerHeight = (SB[3].value - SB[1].value);  	// get resized layers height
		marginSize = Margin/100*doc.height.value;			// Margin size
		// move resized watermark into the document lower right corner with some margin or lower left
		if  ( BottomLetf) {activeDocument.activeLayer.translate(marginSize,( doc.height.value -marginSize - LayerHeight));}
		else {activeDocument.activeLayer.translate((doc.width.value -marginSize - LayerWidth),( doc.height.value -marginSize - LayerHeight));}
	}
	catch(e) { alert(e + ': on line ' + e.line); }			// inform user of error  
	finally{  
		app.preferences.rulerUnits = strtRulerUnits;		// Restore user ruler units  
		app.preferences.typeUnits = strtTypeUnits;			// Restore user type units    
	};  
}; 
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// 
function placeFile(placeFile) {  
    var desc21 = new ActionDescriptor();  
    desc21.putPath( charIDToTypeID('null'), new File(placeFile) );  
    desc21.putEnumerated( charIDToTypeID('FTcs'), charIDToTypeID('QCSt'), charIDToTypeID('Qcsa') );  
    var desc22 = new ActionDescriptor();  
    desc22.putUnitDouble( charIDToTypeID('Hrzn'), charIDToTypeID('#Pxl'), 0.000000 );  
    desc22.putUnitDouble( charIDToTypeID('Vrtc'), charIDToTypeID('#Pxl'), 0.000000 );  
    desc21.putObject( charIDToTypeID('Ofst'), charIDToTypeID('Ofst'), desc22 );  
    executeAction( charIDToTypeID('Plc '), desc21, DialogModes.NO );  
};  

 

JJMack

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 ,
Sep 01, 2020 Sep 01, 2020

Copy link to clipboard

Copied

LATEST

Once you put the actions in a set you need to save them as a preset. Then you can either load them or import them, as JJ mentioned.

action save.jpg

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