loonghao / Photoshop Python Api
Licence: mit
Python API for Photoshop.
Stars: ✭ 126
Programming Languages
python
139335 projects - #7 most used programming language
Projects that are alternatives of or similar to Photoshop Python Api
Grest
Build REST APIs with Neo4j and Flask, as quickly as possible!
Stars: ✭ 102 (-19.05%)
Mutual labels: pypi
Dawnbringer Palettes
Limited color palettes by DawnBringer in various formats.
Stars: ✭ 112 (-11.11%)
Mutual labels: photoshop
Swarmlib
This repository implements several swarm optimization algorithms and visualizes them. Implemented algorithms: Particle Swarm Optimization (PSO), Firefly Algorithm (FA), Cuckoo Search (CS), Ant Colony Optimization (ACO), Artificial Bee Colony (ABC), Grey Wolf Optimizer (GWO) and Whale Optimization Algorithm (WOA)
Stars: ✭ 121 (-3.97%)
Mutual labels: pypi
Bjango Actions
A collection of Photoshop actions, Photoshop scripts, Hazel rules, macOS workflows and other random things for screen designers and developers.
Stars: ✭ 1,407 (+1016.67%)
Mutual labels: photoshop
Norepeat
The norepeat package contains some magical function, tools
Stars: ✭ 111 (-11.9%)
Mutual labels: pypi
Decryptlogin
APIs for loginning some websites by using requests.
Stars: ✭ 1,861 (+1376.98%)
Mutual labels: pypi
Blender Toolbox Qt
Attempt to recreate a blender like toolbox in Qt
Stars: ✭ 98 (-22.22%)
Mutual labels: photoshop
Ui Dna
programmable and semantically UI design tool for Photoshop
Stars: ✭ 126 (+0%)
Mutual labels: photoshop
Linuxacademy Dl
Download videos from Linux Academy (linuxacademy.com) for personal offline use
Stars: ✭ 111 (-11.9%)
Mutual labels: pypi
Rectorch
rectorch is a pytorch-based framework for state-of-the-art top-N recommendation
Stars: ✭ 121 (-3.97%)
Mutual labels: pypi
Rdflib
RDFLib is a Python library for working with RDF, a simple yet powerful language for representing information.
Stars: ✭ 1,584 (+1157.14%)
Mutual labels: pypi
Yakutils
🐃 Yet another toolbox of Python 3 helper functions.
Stars: ✭ 111 (-11.9%)
Mutual labels: pypi
Mal
MAL: A MyAnimeList Command Line Interface [BROKEN: BLAME MyAnimeList]
Stars: ✭ 104 (-17.46%)
Mutual labels: pypi
Purerpc
Asynchronous pure Python gRPC client and server implementation supporting asyncio, uvloop, curio and trio
Stars: ✭ 125 (-0.79%)
Mutual labels: pypi
Rain
🌧️ A live example to illustrate python packaging, testing, building, & deploying
Stars: ✭ 99 (-21.43%)
Mutual labels: pypi
Tinvest
Тинькофф Инвестиции, tinkoff, python, aiohttp, requests, pydantic
Stars: ✭ 115 (-8.73%)
Mutual labels: pypi
Best Of Python
🏆 A ranked list of awesome Python open-source libraries and tools. Updated weekly.
Stars: ✭ 1,869 (+1383.33%)
Mutual labels: pypi
Python API for Photoshop.
The example above was created with Photoshop Python API. Check it out at photoshop-python-api.readthedocs.io/examples.
Has been tested and used Photoshop version:
Photoshop Version | Supported |
---|---|
2020 | ✅ |
cc2019 | ✅ |
cc2018 | ✅ |
cc2017 | ✅ |
Installing
You can install via pip.
pip install photoshop_python_api
or through clone from Github.
git clone https://github.com/loonghao/photoshop_python_api.git
Install package.
python setup.py install
Since it uses COM (Component Object Model) connect Photoshop, it can be used in any DCC software with a python interpreter.
Hello World
import photoshop.api as ps
app = ps.Application()
doc = app.documents.add()
new_doc = doc.artLayers.add()
text_color = ps.SolidColor()
text_color.rgb.green = 255
new_text_layer = new_doc
new_text_layer.kind = ps.LayerKind.TextLayer
new_text_layer.textItem.contents = 'Hello, World!'
new_text_layer.textItem.position = [160, 167]
new_text_layer.textItem.size = 40
new_text_layer.textItem.color = text_color
options = ps.JPEGSaveOptions(quality=5)
# # save to jpg
jpg = 'd:/hello_world.jpg'
doc.saveAs(jpg, options, asCopy=True)
app.doJavaScript(f'alert("save to jpg: {jpg}")')
Photoshop Session
Use it as context.
from photoshop import Session
with Session(action="new_document") as ps:
doc = ps.active_document
text_color = ps.SolidColor()
text_color.rgb.green = 255
new_text_layer = doc.artLayers.add()
new_text_layer.kind = ps.LayerKind.TextLayer
new_text_layer.textItem.contents = 'Hello, World!'
new_text_layer.textItem.position = [160, 167]
new_text_layer.textItem.size = 40
new_text_layer.textItem.color = text_color
options = 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 🐛 |
This project follows the all-contributors specification. Contributions of any kind are welcome!
how to get Photoshop program ID
Get-ChildItem "HKLM:\SOFTWARE\Classes" |
?{ ($_.PSChildName -match "^[a-z]+\.[a-z]+(\.\d+)?$") -and ($_.GetSubKeyNames() -contains "CLSID") } |
?{ $_.PSChildName -match "Photoshop.Application" } | ft PSChildName
How to get a list of COM objects from the registry
Useful links
- https://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.pdf
- https://github.com/lohriialo/photoshop-scripting-python
- https://www.adobe.com/devnet/photoshop/scripting.html
- https://www.youtube.com/playlist?list=PLUEniN8BpU8-Qmjyv3zyWaNvDYwJOJZ4m
- http://yearbook.github.io/esdocs/#/Photoshop/Application
- http://www.shining-lucy.com/wiki/page.php?id=appwiki:photoshop:ps_script
- http://www.tonton-pixel.com/wp-content/uploads/DecisionTable.pdf
- http://jongware.mit.edu/pscs5js_html/psjscs5/pc_Application.html
- https://indd.adobe.com/view/a0207571-ff5b-4bbf-a540-07079bd21d75
- http://shining-lucy.com/wiki/page.php?id=appwiki:photoshop:ps_script
- http://web.archive.org/web/20140121053819/http://www.pcpix.com/Photoshop/char.html
- http://www.tonton-pixel.com/scripts/utility-scripts/get-equivalent-id-code/index.html
- https://github.com/Adobe-CEP/Samples/tree/master/PhotoshopEvents
- https://evanmccall.wordpress.com/2015/03/09/how-to-develop-photoshop-tools-in-python
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].