Join our global community of Photoshop developers.
Recently active
Bug issue: API with layer edit cannot work properly suddenly today to edit the type='textLayer', https://developer.adobe.com/photoshop/photoshop-api-docs/api/#tag/Photoshop/operation/documentOperationsError message like following: 'status': 'failed', 'created': '2023-12-05T08:29:28.412Z', 'modified': '2023-12-05T08:41:28.436Z', 'errors': {'code': 500, 'details': [{'name': 'Unknown Error', 'reason': 'Something went wrong, please try your request again. If you continue to experience issues please reach out to psdservices@adobe.com for support.'}], 'title': 'Internal Service Error', 'type': 'InternalServiceError'}}], Expected: it can be fixed as soon as possible, as we are paid user to use this service for our production environment.
Can any let me know how to read a tiff file and identify it's compression mode (LZW, JPEG, etc..) using photoshop sdk c++?
I found a buffer overrun risk in C++ SDK (PIutilities.cpp) code, but can I report it here?at years before there is a forum to discuss the C++ SDK. but several years later now I can not find it. I donot know if it is appropriate to discuss it here. Can anyone have any suggestions?
HI,Photoshop layers are stored in tag or field 37724, identified as TIFFTAG_IMAGESOURCEDATA in the latest libtiff.The data blob shall be an array of uint8_t, and shall be headed by a magic signature that is one of the following null terminated ASCII strings:for standard Photoshop files, Adobe Photoshop Document Data Block.for Large Document Format (8BPB/PSB) files, Adobe Photoshop Document Data V0002 (the last five characters differ).After the magic signature, the remainder of the blob is comprised of a series of Additional Layer Information blocks:signature: 8BIM (4 bytes)block type (4 bytes)length of the block (4 bytes, variable, padded to a 4-byte offset)data of the block (length as above)The Technical Notes say that these are the available block types:Layr (layer block)LMsk (global mask info block)Patt (pattern definition block)Anno (annotations)Has anyone figured how to get the individual layer details using lib
I'm a programmer and would like to write a script that can load an ABR brushes file exported from photoshop, make some changes to it and write it to disk again. I need a PDF or similar that describes the file format of this file. I know these usedto be available, but can no longer locate any with a web search. Where could I find some technical documentation for the ABR file format?
With the new version 25.0 and 25.1, I am no longer able to access the reference for 'adobe photoshop 2024 type library to add to my VS solution. I am able to access it in 24.7.2. (Interop.Photoshop.dll). I have updated C++ updates for VS. Please let me know if any one else has been able to successful load the DLL and the steps. Thank you in advance.
SPErr PlayGetting History Info(/*your parameters go here*/void) { PIActionDescriptor result = NULL; DescriptorTypeID runtimeKeyID; DescriptorTypeID runtimeTypeID; DescriptorTypeID runtimeObjID; DescriptorTypeID runtimeEnumID; DescriptorTypeID runtimeClassID; DescriptorTypeID runtimePropID; DescriptorTypeID runtimeUnitID; SPErr error = kSPNoError; // Move this to the top of the routine! PIActionDescriptor desc0000000000000e48 = NULL; error = sPSActionDescriptor->Make(&desc0000000000000e48); if (error) goto returnError; // Unicode String as UTF8: Open error = sPSActionDescriptor->PutString(desc0000000000000e48, keyName, "Open"); if (error) goto returnError; error = sPSActionDescriptor->PutInteger(desc0000000000000e48, keyItemIndex, 2); if (error) goto returnError; error = sPSActionDescriptor->PutInteger(desc0000000000000e48, keyCount, 3); if (error) goto returnErr
HI,I want to identify if the layer has clipping mask alppiled in photoshop plugin sdk.I would really appreciate any thoughts/suggestions on the matter. Thanks all.
Trying to reset the value of app.activeDocument.info.title to nothing, but it won't overwrite//Works app.activeDocument.info.title = "TEST"; //Doesn't work app.activeDocument.info.title = ""Is there a way to achieve this with info.title or do I have to go through metadata directly?
Hi, Is there a way to both modify document (client.modifyDocument) and replace a smart object (client.replaceSmartObject) in one api call instead of two? Thanks
Hi All,I want to get the adjustment layer Kind value by using Photoshop SDK in C++.I have attached the screenshot which contains different adjustment layer Kind values.Please provide C++ code to get the adjustment layer kind values.Can anyone please help me with the above!
Hi All,I want to identify the linked layers by using Photoshop SDK in C++.Can anyone please help me with the above!
I am currently developing an external c++ command line app to parse a photoshop tif file .Using the file format (https://www.adobe.com/devnet-apps/photoshop/fileformatashtml/)37724tImageSourceData . Begins with the null-terminated string " Adobe Photoshop Document Data Block ", (**PSB** " Adobe Photoshop Document Data V0002 "), followed by data of various types. See Photoshop TIFF.pdf for a list .I want to get the all layer and layer set details along with the blend mode , opacity , visibility etc.Also need to save the layer and layer mask images data as png or in binary.It's important that I stick with c++ & that this be an external application, so the Plugin SDK isn't much help here. I would really appreciate any thoughts/suggestions on the matter. Thanks all.
Using the following characterStyles, only font size is working, can't change color, underline, etc.:const options = {layers: [{edit: {},name: "test",text: {content: "Testing 123",orientation: "horizontal",characterStyles: [{underline:true,fontSize: 75,fontCaps: "allCaps",color: {blue: 300,green: 100,red: 63}}]}},]}
Hi,I created an Action JSON file which I use with the Photoshop API and send to this endpoint.https://image.adobe.io/pie/psdService/actionJSONHowever this object does not do anything (doesn't work):{ _obj: "javaScriptOptionsClass", height: { _unit: "pixelsUnit", _value: 1440.0 }, limit: false, message: "Fit Image action settings", width: { _unit: "pixelsUnit", _value: 1080.0 }, },How can I fit an image with the action JSON to certain dimensions? Everything normal works, I have tested different other actions which work but not this one. Thanks in advance!
Hi. I want to replace a color layer and an image layer on a psdt file with the API, is this possible? First resources showed me https://developer.adobe.com/photoshop/photoshop-api-docs/code-sample/#executing-an-actionjson but i'm not sure that I can use this on psdt files too
I have created plugin for Photoshop and want to use LimeLM TurboActiviate for licensing.Does anyone have experience with it? I found this page at their site:https://wyday.com/limelm/help/using-turboactivate-with-electron-nodejs/ But can not make this to work so far.If somone is willing to share code (of course only for this part not whole plugin) or give some advice? I would greatly appreciate it. Thank you.
Hi,I've been attempting to utilize the Photoshop API to execute certain actions but have encountered an obstacle related to storing the output.My intention is to use Dropbox for storing my outputs. However, I am encountering challenges when trying to run the actions.I have experimented with Photoshop actions files and actionJson, but unfortunately, I've encountered the same issue with both methods.Here is my request array:2 [ "headers" => [ "Authorization" => "my_auth" "x-api-key" => "my_key" ] "json" => [ "inputs" => [ 0 => [ "storage" => "external" "href" => "https://this_is_my_image_file_and_it_is_reachable.jpg" ] ] "options" => [ "actionJSON" => // My actions ] "outputs" => [ 0 => [ "storage" => "external" "href" => "https://content.dropboxapi.com/apitul/1/my_dropbox_temp_link" "type" => "image/jpeg" "embedColorProfile" =>
I want to use text endpoint with "from" and "to" options, but there are no options.I know there are in "pie/psdService/documentOperations" endpoint, but this can't edit without original font if there aren't preset-font.Do you know somehow to use like "from" "to" in text edit endpoint?
Hello, I have already programmed a Photoshop plugin and put it in the marketplace for free.Now I am working on my second plugin. This time I want to sell it.Now I am not sure if selling it as a subscription or for a fixed price works better.Therefore my question,may I publish the same plugin under different names to offer different payment methods?E.g..Name 1 : My-pluginname -->(for subscription model)Name 2 : My-pluginname Lifetime -->( for one time payment)both would get all updates, but the customer can choose if he prefers to pay subscription or one time paymentalso, how are your experiences with selling plugins. Is it worth it at all?
Does the input/output need to be a presigned url or can they be public (for the GET status of a job - API call)? The Documentation for General workflow (located here) says "The Photoshop API works with any public or signed url" but the programmer helping me says it needs to be presigned to work hoping someone could clarify. {"jobId": "f54e0fcb-260b-47c3-b520-de0d17dc2b67","outputs": [{"input": "presigned_GET_URL","status": "string","created": "string","modified": "string","_links": {}}],
Dear Community,As a fellow developer, I've recently ventured into using Photoshop for a project, and I must say it has proven to be an invaluable tool. Specifically, I've been impressed with its capabilities for background removal, applying shadows to subjects, and, most notably, the Generative Fill feature. This feature, driven by prompts, has the remarkable ability to generate highly realistic backgrounds for images.However, there is a significant limitation – the standard Photoshop API lacks an endpoint for the Generative Fill feature, rendering it impractical for commercial use. Therefore, I would like to reach out to individuals within Adobe or Adobe support to inquire about the potential release timeline for the Generative Fill endpoint within the Photoshop API.Your insights and assistance in this matter would be greatly appreciated.Warm regards,Vinay S.
Please provide a solution to our error: Error message: “The metascopes in the JWT are not a subset of the metascopes in the binding.. invalid_scope.” We're working to resolve an scope error that is thrown each time we provide credentials from the Adobe Developer Console. Credentials needed include Client ID, Client Secret, Technical account ID, and generated public/private keypair. We were given documentation ITAM documentation to resolve make the API connection although we're constantly received the same error. Even with all the necesarry requirements. Please assist, Thank you.
Hello. I have a PSD file consisting of several layer groups. I'm trying to use the Photoshop JavaScript API to extract these layer groups into separate PSD files. This is the relevant section of my code: const axios = require('axios'); ... let psdData = { "inputs": [{ "href": presignedUrl, "storage": "external" }], "options": <options> }, "outputs": [{ "storage": "external", "type": <PSD type>, "href": uploadURL }] } let config = { method: 'post', maxBodyLength: Infinity, url: '<PSD service URL>', headers: { 'Authorization': 'Bearer ' + aioToken, 'x-api-key': aioApiKey, headers }, data: JSON.stringify(psdData) }; let resp = await axios.request(config); The layer groups have predictable names, that could be hardcoded if needed (although this is not ideal).What should go into <options>, <PSD type> and <PSD service URL> to ach
I want to edit my text with Adobe api and set the text properties above image[Drop Shadow] → Angle 90° / Distance: 6px / Spread: 100% / Size: 7p[Boundary] → 5px / Outside / #009ffb
Remix with Firefly Community Gallery
Thousands of free creations to fall in love with and remix in Firefly.
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.