Package: photoshop-python-api
Python API for Photoshop.The example above was created with Photoshop Python API. Check it out athttps://loonghao.github.io/photoshop-python-api/examples.Has been tested and used Photoshop version:Photoshop VersionSupported2023✅2022✅2021✅2020✅cc2019✅cc2018✅cc2017✅InstallingYou can install via pip.pip install photoshop_python_apiSince it uses COM (Component Object Model) connect Photoshop, it can be used
in any DCC software with a python interpreter.Hello Worldimportphotoshop.apiaspsapp=ps.Application()doc=app.documents.add()new_doc=doc.artLayers.add()text_color=ps.SolidColor()text_color.rgb.red=0text_color.rgb.green=255text_color.rgb.blue=0new_text_layer=new_docnew_text_layer.kind=ps.LayerKind.TextLayernew_text_layer.textItem.contents='Hello, World!'new_text_layer.textItem.position=[160,167]new_text_layer.textItem.size=40new_text_layer.textItem.color=text_coloroptions=ps.JPEGSaveOptions(quality=5)# # save to jpgjpg='d:/hello_world.jpg'doc.saveAs(jpg,options,asCopy=True)app.doJavaScript(f'alert("save to jpg:{jpg}")')Photoshop SessionUse it as context.fromphotoshopimportSessionwithSession(action="new_document")asps:doc=ps.active_documenttext_color=ps.SolidColor()text_color.rgb.green=255new_text_layer=doc.artLayers.add()new_text_layer.kind=ps.LayerKind.TextLayernew_text_layer.textItem.contents='Hello, World!'new_text_layer.textItem.position=[160,167]new_text_layer.textItem.size=40new_text_layer.textItem.color=text_coloroptions=ps.JPEGSaveOptions(quality=5)jpg='d:/hello_world.jpg'doc.saveAs(jpg,options,asCopy=True)ps.app.doJavaScript(f'alert("save to jpg:{jpg}")')Contributors ✨Thanks goes to these wonderful people (emoji key):Hal💻voodraizer🐛brunosly🐛tubi🐛wjxiehaixin🐛罗马钟🐛clement🐛krevlinmen🐛Thomas🐛CaptainCsaba🐛Il Harper💻blunderedbishop🐛MrTeferi💻Damien Chambe💻Ehsan Akbari Tabar🐛Michael Ikemann🐛Enguerrand DE SMET💻Proton💻This project follows theall-contributorsspecification.
Contributions of any kind are welcome!Repobeats analyticshow to get Photoshop program IDGet-ChildItem "HKLM:\SOFTWARE\Classes" | 
  ?{ ($_.PSChildName -match "^[a-z]+\.[a-z]+(\.\d+)?$") -and ($_.GetSubKeyNames() -contains "CLSID") } | 
  ?{ $_.PSChildName -match "Photoshop.Application" } | ft PSChildNameHow to get a list of COM objects from the registryUseful linkshttps://theiviaxx.github.io/photoshop-docs/Photoshop/http://wwwimages.adobe.com/www.adobe.com/content/dam/acom/en/devnet/photoshop/pdfs/photoshop-cc-javascript-ref-2015.pdfhttps://github.com/lohriialo/photoshop-scripting-pythonhttps://www.adobe.com/devnet/photoshop/scripting.htmlhttps://www.youtube.com/playlist?list=PLUEniN8BpU8-Qmjyv3zyWaNvDYwJOJZ4mhttp://yearbook.github.io/esdocs/#/Photoshop/Applicationhttp://www.shining-lucy.com/wiki/page.php?id=appwiki:photoshop:ps_scripthttp://www.tonton-pixel.com/wp-content/uploads/DecisionTable.pdfhttp://jongware.mit.edu/pscs5js_html/psjscs5/pc_Application.htmlhttps://indd.adobe.com/view/a0207571-ff5b-4bbf-a540-07079bd21d75http://shining-lucy.com/wiki/page.php?id=appwiki:photoshop:ps_scripthttp://web.archive.org/web/20140121053819/http://www.pcpix.com/Photoshop/char.htmlhttp://www.tonton-pixel.com/scripts/utility-scripts/get-equivalent-id-code/index.htmlhttps://github.com/Adobe-CEP/Samples/tree/master/PhotoshopEventshttps://evanmccall.wordpress.com/2015/03/09/how-to-develop-photoshop-tools-in-python