Thank you in advance,
Anatoly
I wrote an automation plugin and works fine. But, when look the System Info (Help | System Info), my plugin shows "NO VERSION". Can someone tell me how to specify a version.
Thanks
Bill
Hi there,
I've found the "Adobe Photoshop File Formats Specification" in the documentation (http://www.adobe.com/devnet-apps/photoshop/fileformatashtml/).
But unfortunately it does not contain the spec for .abr brush file format.
Any ideas where to find this?
Thanks
Mirko
Is ittheoreticallypossible fora filterto pass the image from Photoshop toaC#program, the program makes some changes and passes the new image back to thefilterand the filter passes itbacktoPhotoshop?
how to use old 8bf filter in photoshop cc2015
Hi, I subscribe to the CC photography pack and keep everything up to date. I want to install an addon called Adobe Paper Textures Pro [and others]. I go to the Adobe add ons site, either direct or via the link in PS, I make sure I'm signed in, creative cloud app is running and file syncing is on. I click on the install button and get the green tick telling me it is acquired. If I click view my add ons, it is listed and I'm told "You can locate the panel under the Window > Extensions menu from within Adobe Photoshop CC and CC 2014."
I start PS, click window>extensions but there is never anything there except the 3 items that are always there Adobe colour themes, recent files and OnOne. No matter how many times I try, it will not appear, Creative cloud app never shows any response and this happens with any add on.
What am I missing?
Thanks in anticipation, Neil.
Sysinfo is below if needed.
Adobe Photoshop Version: 2015.1.2 20160113.r.355 2016/01/13:23:59:59 CL 1059143 x64
Operating System: Windows 10 64-bit
Version: 10 or greater
System architecture: Intel CPU Family:6, Model:12, Stepping:3 with MMX, SSE Integer, SSE FP, SSE2, SSE3, SSE4.1, SSE4.2, AVX, AVX2
Physical processor count: 4
Processor speed: 3200 MHz
Built-in memory: 16333 MB
Free memory: 11344 MB
Memory available to Photoshop: 14521 MB
Memory used by Photoshop: 63 %
Modifier Palette: Enabled.
Design Space: Enabled.
Artboards: Enabled.
3D Multitone Printing: Disabled.
Highbeam: Enabled.
Image tile size: 1024K
Image cache levels: 4
Font Preview: Medium
TextComposer: Latin
Display: 1
Display Bounds: top=0, left=0, bottom=1200, right=1920
OpenGL Drawing: Enabled.
OpenGL Allow Old GPUs: Not Detected.
OpenGL Drawing Mode: Advanced
OpenGL Allow Normal Mode: True.
OpenGL Allow Advanced Mode: True.
AIFCoreInitialized=1
AIFOGLInitialized=1
OGLContextCreated=1
NumGLGPUs=1
glgpu[0].GLVersion="3.0"
glgpu[0].IsIntegratedGLGPU=0
glgpu[0].GLMemoryMB=2048
glgpu[0].GLName="NVIDIA GeForce GTX 960"
glgpu[0].GLVendor="NVIDIA Corporation"
glgpu[0].GLVendorID=4318
glgpu[0].GLDriverVersion="10.18.13.5891"
glgpu[0].GLRectTextureSize=16384
glgpu[0].GLRenderer="GeForce GTX 960/PCIe/SSE2"
glgpu[0].GLRendererID=5121
glgpu[0].HasGLNPOTSupport=1
glgpu[0].GLDriver="nvd3dumx.dll,nvwgf2umx.dll,nvwgf2umx.dll,nvwgf2umx.dll,nvd3dum,nvwgf2um ,nvwgf2um,nvwgf2um"
glgpu[0].GLDriverDate="20151105000000.000000-000"
glgpu[0].CanCompileProgramGLSL=1
glgpu[0].GLFrameBufferOK=1
glgpu[0].glGetString[GL_SHADING_LANGUAGE_VERSION]="4.50 NVIDIA"
glgpu[0].glGetProgramivARB[GL_FRAGMENT_PROGRAM_ARB][GL_MAX_PROGRAM_INSTRUCTIONS_ARB]=[6553 6]
glgpu[0].glGetIntegerv[GL_MAX_TEXTURE_UNITS]=[4]
glgpu[0].glGetIntegerv[GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS]=[192]
glgpu[0].glGetIntegerv[GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS]=[32]
glgpu[0].glGetIntegerv[GL_MAX_TEXTURE_IMAGE_UNITS]=[32]
glgpu[0].glGetIntegerv[GL_MAX_DRAW_BUFFERS]=[8]
glgpu[0].glGetIntegerv[GL_MAX_VERTEX_UNIFORM_COMPONENTS]=[4096]
glgpu[0].glGetIntegerv[GL_MAX_FRAGMENT_UNIFORM_COMPONENTS]=[4096]
glgpu[0].glGetIntegerv[GL_MAX_VARYING_FLOATS]=[124]
glgpu[0].glGetIntegerv[GL_MAX_VERTEX_ATTRIBS]=[16]
glgpu[0].extension[AIF::OGL::GL_ARB_VERTEX_PROGRAM]=1
glgpu[0].extension[AIF::OGL::GL_ARB_FRAGMENT_PROGRAM]=1
glgpu[0].extension[AIF::OGL::GL_ARB_VERTEX_SHADER]=1
glgpu[0].extension[AIF::OGL::GL_ARB_FRAGMENT_SHADER]=1
glgpu[0].extension[AIF::OGL::GL_EXT_FRAMEBUFFER_OBJECT]=1
glgpu[0].extension[AIF::OGL::GL_ARB_TEXTURE_RECTANGLE]=1
glgpu[0].extension[AIF::OGL::GL_ARB_TEXTURE_FLOAT]=1
glgpu[0].extension[AIF::OGL::GL_ARB_OCCLUSION_QUERY]=1
glgpu[0].extension[AIF::OGL::GL_ARB_VERTEX_BUFFER_OBJECT]=1
glgpu[0].extension[AIF::OGL::GL_ARB_SHADER_TEXTURE_LOD]=1
License Type: Subscription
Serial number: 96040472626318935125
Application folder: C:\Program Files\Adobe\Adobe Photoshop CC 2015\
Temporary file path: C:\Users\Neil\AppData\Local\Temp\
Photoshop scratch has async I/O enabled
Scratch volume(s):
Startup, 232.1G, 107.5G free
Required Plug-ins folder: C:\Program Files\Adobe\Adobe Photoshop CC 2015\Required\Plug-Ins\
Primary Plug-ins folder: C:\Program Files\Adobe\Adobe Photoshop CC 2015\Plug-ins\
Installed components:
A3DLIBS.dll A3DLIB Dynamic Link Library 9.2.0.112
ACE.dll ACE 2015/09/09-18:52:48 79.567158 79.567158
AdbePM.dll PatchMatch 0000/00/00-00:00:00 1. 1.
AdobeLinguistic.dll Adobe Linguisitc Library 9.0.0
AdobeOwl.dll Adobe Owl 5.2.9
AdobePDFL.dll PDFL 2015/09/12-01:10:45 79.156620 79.156620
AdobePIP.dll Adobe Product Improvement Program 7.3.1.70
AdobeSVGAGM.dll AdobeSVGAGM 79.566705 79.566705
AdobeXMP.dll Adobe XMP Core 2015/09/10-01:10:20 79.158325 79.158325
AdobeXMPFiles.dll Adobe XMP Files 2015/09/10-01:10:20 79.158325 79.158325
AdobeXMPScript.dll Adobe XMP Script 2015/09/10-01:10:20 79.158325 79.158325
adobe_caps.dll Adobe CAPS 9,0,0,28
AGM.dll AGM 2015/09/09-18:52:48 79.567158 79.567158
ahclient.dll AdobeHelp Dynamic Link Library 2.0.0.2
AIDE.dll AIDE 2015/10/15-11:58:31 79.568000 79.568000
amtlib.dll AMTLib (64 Bit) 9.0.0.89BuildVersion: 9.0; BuildDate: Tue Aug 25 2015 7:30:38) 1.000000
ARE.dll ARE 2015/09/09-18:52:48 79.567158 79.567158
AXE8SharedExpat.dll AXE8SharedExpat 2015/03/13-23:40:54 79.562390 79.562390
AXEDOMCore.dll AXEDOMCore 2015/03/13-23:40:54 79.562390 79.562390
Bib.dll BIB 2015/09/09-18:52:48 79.567158 79.567158
BIBUtils.dll BIBUtils 2015/09/09-18:52:48 79.567158 79.567158
boost_date_time.dll photoshopdva 8.0.0
boost_signals.dll photoshopdva 8.0.0
boost_system.dll photoshopdva 8.0.0
boost_threads.dll photoshopdva 8.0.0
cg.dll NVIDIA Cg Runtime 3.0.00007
cgGL.dll NVIDIA Cg Runtime 3.0.00007
CIT.dll Adobe CIT 2.3.7.33275 2.3.7.33275
CITThreading.dll Adobe CITThreading 2.3.7.33275 2.3.7.33275
CoolType.dll CoolType 2015/09/09-18:52:48 79.567158 79.567158
dnssd.dll Bonjour 3,0,0,2
dvaaudiodevice.dll photoshopdva 8.0.0
dvacore.dll photoshopdva 8.0.0
dvamarshal.dll photoshopdva 8.0.0
dvamediatypes.dll photoshopdva 8.0.0
dvametadata.dll photoshopdva 8.0.0
dvametadataapi.dll photoshopdva 8.0.0
dvametadataui.dll photoshopdva 8.0.0
dvaplayer.dll photoshopdva 8.0.0
dvatransport.dll photoshopdva 8.0.0
dvaui.dll photoshopdva 8.0.0
dvaunittesting.dll photoshopdva 8.0.0
dynamiclink.dll photoshopdva 8.0.0
ExtendScript.dll ExtendScript 2015/04/17-16:55:22 80.1017022 80.1017022
icucnv40.dll International Components for Unicode 2014/10/31-16:52:45 Build gtlib_6.0.21339
icudt40.dll International Components for Unicode 2014/10/31-16:52:45 Build gtlib_6.0.21339
icuuc40.dll International Components for Unicode 2014/10/31-16:52:45 Build gtlib_6.0.21339
igestep30.dll IGES Reader 9.3.0.113
imslib.dll IMSLib DLL 9.0.1.14
JP2KLib.dll JP2KLib 2015/08/14-01:13:58 79.258941 79.258941
libifcoremd.dll Intel(r) Visual Fortran Compiler 10.0 (Update A)
libiomp5md.dll Intel(R) OpenMP* Runtime Library 5.0
libmmd.dll Intel(r) C Compiler, Intel(r) C++ Compiler, Intel(r) Fortran Compiler 12.0
LogSession.dll LogSession 7.3.1.70
manta.dll Manta 1. 1.
mediacoreif.dll photoshopdva 8.0.0
MPS.dll MPS 2015/08/14-01:13:58 79.566687 79.566687
msvcp120.dll Microsoft® Visual Studio® 2013 12.00.21005.1
msvcr120.dll Microsoft® Visual Studio® 2013 12.00.21005.1
ONCore9.dll ONCore 7.0.0.0
ONCoreFoundation9.dll ONCoreFoundation7 7, 0, 0, 0
ONDocument9.dll ONDocument 7.0.0.0
ONProxySupport9.dll ONProxySupport 1.0.0.0
pdfsettings.dll Adobe PDFSettings 1.04
Photoshop.dll Adobe Photoshop CC 2015 16.1.2
Plugin.dll Adobe Photoshop CC 2015 16.1.2
PlugPlugExternalObject.dll Adobe(R) CEP PlugPlugExternalObject Standard Dll (64 bit) 6.1.0
PlugPlugOwl.dll Adobe(R) CSXS PlugPlugOwl Standard Dll (64 bit) 6.1.0.164
PSArt.dll Adobe Photoshop CC 2015 16.1.2
PSViews.dll Adobe Photoshop CC 2015 16.1.2
SCCore.dll ScCore 2015/04/17-16:55:22 80.1017022 80.1017022
SVGRE.dll SVGRE 79.566690 79.566690
svml_dispmd.dll Intel(r) C Compiler, Intel(r) C++ Compiler, Intel(r) Fortran Compiler 12.0
tbb.dll Intel(R) Threading Building Blocks for Windows 4, 3, 2015, 0408
tbbmalloc.dll Intel(R) Threading Building Blocks for Windows 4, 3, 2015, 0408
TfFontMgr.dll FontMgr 9.3.0.113
TfKernel.dll Kernel 9.3.0.113
TFKGEOM.dll Kernel Geom 9.3.0.113
TFUGEOM.dll Adobe, UGeom© 9.3.0.113
updaternotifications.dll Adobe Updater Notifications Library 9.0.0.15 (BuildVersion: 1.0; BuildDate: BUILDDATETIME) 9.0.0.15
VulcanControl.dll Vulcan Application Control Library 5.2.0.35
VulcanMessage5.dll Vulcan Message Library 5.2.0.35
WRServices.dll WRServices Fri Jul 31 2015 07:50:10 Build 0.21834 0.21834
wu3d.dll U3D Writer 9.3.0.113
Required plug-ins:
3D Studio 16.1.2 (2015.1.2 x001 x003)
Accented Edges 16.1.2
Adaptive Wide Angle 16.1.2
Angled Strokes 16.1.2
Average 16.1.2 (2015.1.2 x001 x003)
Bas Relief 16.1.2
BMP 16.1.2
Camera Raw 9.5.1
Camera Raw Filter 9.5.1
Chalk & Charcoal 16.1.2
Charcoal 16.1.2
Chrome 16.1.2
Cineon 16.1.2 (2015.1.2 x001 x003)
Clouds 16.1.2 (2015.1.2 x001 x003)
Collada 16.1.2 (2015.1.2 x001 x003)
Color Halftone 16.1.2
Colored Pencil 16.1.2
CompuServe GIF 16.1.2
Conté Crayon 16.1.2
Craquelure 16.1.2
Crop and Straighten Photos 16.1.2 (2015.1.2 x001 x003)
Crop and Straighten Photos Filter 16.1.2
Crosshatch 16.1.2
Crystallize 16.1.2
Cutout 16.1.2
Dark Strokes 16.1.2
De-Interlace 16.1.2
Dicom 16.1.2
Difference Clouds 16.1.2 (2015.1.2 x001 x003)
Diffuse Glow 16.1.2
Displace 16.1.2
Dry Brush 16.1.2
Eazel Acquire 16.1.2 (2015.1.2 x001 x003)
Entropy 16.1.2 (2015.1.2 x001 x003)
Export Color Lookup Tables NO VERSION
Extrude 16.1.2
FastCore Routines 16.1.2 (2015.1.2 x001 x003)
Fibers 16.1.2
Film Grain 16.1.2
Filter Gallery 16.1.2
Flash 3D 16.1.2 (2015.1.2 x001 x003)
Fresco 16.1.2
Glass 16.1.2
Glowing Edges 16.1.2
Google Earth 4 16.1.2 (2015.1.2 x001 x003)
Grain 16.1.2
Graphic Pen 16.1.2
Halftone Pattern 16.1.2
HDRMergeUI 16.1.2
HSB/HSL 16.1.2
IFF Format 16.1.2
IGES 16.1.2 (2015.1.2 x001 x003)
Ink Outlines 16.1.2
JPEG 2000 16.1.2
Kurtosis 16.1.2 (2015.1.2 x001 x003)
Lens Blur 16.1.2
Lens Correction 16.1.2
Lens Flare 16.1.2
Liquify 16.1.2
Matlab Operation 16.1.2 (2015.1.2 x001 x003)
Maximum 16.1.2 (2015.1.2 x001 x003)
Mean 16.1.2 (2015.1.2 x001 x003)
Measurement Core 16.1.2 (2015.1.2 x001 x003)
Median 16.1.2 (2015.1.2 x001 x003)
Mezzotint 16.1.2
Minimum 16.1.2 (2015.1.2 x001 x003)
MMXCore Routines 16.1.2 (2015.1.2 x001 x003)
Mosaic Tiles 16.1.2
Multiprocessor Support 16.1.2 (2015.1.2 x001 x003)
Neon Glow 16.1.2
Note Paper 16.1.2
NTSC Colors 16.1.2 (2015.1.2 x001 x003)
Ocean Ripple 16.1.2
OpenEXR 16.1.2
Paint Daubs 16.1.2
Palette Knife 16.1.2
Patchwork 16.1.2
Paths to Illustrator 16.1.2
PCX 16.1.2 (2015.1.2 x001 x003)
Photocopy 16.1.2
Photoshop 3D Engine 16.1.2 (2015.1.2 x001 x003)
Photoshop Touch 14.0
Picture Package Filter 16.1.2 (2015.1.2 x001 x003)
Pinch 16.1.2
Pixar 16.1.2 (2015.1.2 x001 x003)
Plaster 16.1.2
Plastic Wrap 16.1.2
PLY 16.1.2 (2015.1.2 x001 x003)
PNG 16.1.2
Pointillize 16.1.2
Polar Coordinates 16.1.2
Portable Bit Map 16.1.2 (2015.1.2 x001 x003)
Poster Edges 16.1.2
PRC 16.1.2 (2015.1.2 x001 x003)
Radial Blur 16.1.2
Radiance 16.1.2 (2015.1.2 x001 x003)
Range 16.1.2 (2015.1.2 x001 x003)
Render Color Lookup Grid NO VERSION
Reticulation 16.1.2
Ripple 16.1.2
Rough Pastels 16.1.2
Save for Web 16.1.2
ScriptingSupport 16.1.2
Shake Reduction 16.1.2
Shear 16.1.2
Skewness 16.1.2 (2015.1.2 x001 x003)
Smart Blur 16.1.2
Smudge Stick 16.1.2
Solarize 16.1.2 (2015.1.2 x001 x003)
Spaces 16.1.2
Spatter 16.1.2
Spherize 16.1.2
Sponge 16.1.2
Sprayed Strokes 16.1.2
Stained Glass 16.1.2
Stamp 16.1.2
Standard Deviation 16.1.2 (2015.1.2 x001 x003)
STL 16.1.2 (2015.1.2 x001 x003)
Sumi-e 16.1.2
Summation 16.1.2 (2015.1.2 x001 x003)
Targa 16.1.2
Texturizer 16.1.2
Tiles 16.1.2
Torn Edges 16.1.2
Twirl 16.1.2
U3D 16.1.2 (2015.1.2 x001 x003)
Underpainting 16.1.2
Vanishing Point 16.1.2
Variance 16.1.2 (2015.1.2 x001 x003)
Virtual Reality Modeling Language | VRML 16.1.2 (2015.1.2 x001 x003)
Water Paper 16.1.2
Watercolor 16.1.2
Wave 16.1.2
Wavefront|OBJ 16.1.2 (2015.1.2 x001 x003)
WIA Support 16.1.2 (2015.1.2 x001 x003)
Wind 16.1.2
Wireless Bitmap 16.1.2 (2015.1.2 x001 x003)
ZigZag 16.1.2
Optional and third party plug-ins:
Analog Efex Pro 2 2.0.12.12
BackgroundFilter 2.2.21.12
Color Efex Pro 4 4.3.24.12
Dfine 2 2.2.21.12
FineStructuresFilter 2.2.21.12
HDR Efex Pro 2 2.2.24.12
Hidden NO VERSION
HotPixelsFilter 2.2.21.12
Merge to HDR Efex Pro 2 2.2.24.12
Nik Collection Selective Tool 2.1.28
Perfect Effects 9 9.5.0
Perfect Effects 9 Standalone Filter 9.5.0
Perfect Effects 9 Standalone Smart Filter 9.5.0
Perfectly Clear V2 2.0.1.14
ShadowsFilter 2.2.21.12
Sharpener Pro 3: (1) RAW Presharpener 3.1.21.12
Sharpener Pro 3: (2) Output Sharpener 3.1.21.12
Silver Efex Pro 2 2.2.24.12
SkinFilter 2.2.21.12
SkyFilter 2.2.21.12
StrongNoiseFilter 2.2.21.12
Topaz Adjust 5 10.0
Topaz Clarity 10.0
Topaz Clean 3 10.0
Topaz DeNoise 5 10.0
Topaz Detail 3 10.0
Topaz ReMask 4 10.0
Topaz Simplify 4 10.0
Viveza 2 2.1.21.12
Plug-ins that failed to load: NONE
Extensions:
Recent Files 1.2.0
C:\Program Files (x86)\Common Files\Adobe\CEP\extensions\CCX_START_EXTENSION_1_2_0_903\index.html
Libraries 2.3.1048
C:\Program Files (x86)\Common Files\Adobe\CEP\extensions\CC_LIBRARIES_PANEL_EXTENSION_2_3_1048\index.html
Start 1.2.0
C:\Program Files (x86)\Common Files\Adobe\CEP\extensions\CCX_START_EXTENSION_1_2_0_903\index.html
onOne 1.0.0
C:\Program Files (x86)\Common Files\Adobe\CEP\extensions\onOne\index.html
Adobe Color Themes 6.1.0
C:\Program Files\Adobe\Adobe Photoshop CC 2015\Required\CEP\extensions\com.adobe.KulerPanel.html\index.html
Export As 2.4.0
C:\Program Files\Adobe\Adobe Photoshop CC 2015\Required\CEP\extensions\com.adobe.webpa.crema\PSPanel\dialog.html
Device Preview 1.1.3
C:\Program Files\Adobe\Adobe Photoshop CC 2015\Required\CEP\extensions\com.adobe.preview\PSPanel\panel.html
Share on Behance 3.0.0
C:\Program Files\Adobe\Adobe Photoshop CC 2015\Required\CEP\extensions\com.adobe.behance.shareonbehance.html\index.html
com.adobe.preview.loader 1.1.3
C:\Program Files\Adobe\Adobe Photoshop CC 2015\Required\CEP\extensions\com.adobe.preview\PSLoader\loader.html
Export As 2.4.0
C:\Program Files\Adobe\Adobe Photoshop CC 2015\Required\CEP\extensions\com.adobe.webpa.crema\PSPanel\dialog.html
Installed TWAIN devices: NONE
Please tell me how to debug Photoshop CS6 plug-in.
Development environment is Visual studio 2012.
Hello,
We are developing the next version of our file format plugin and an associated CEP extension for Photoshop. When the user hits "OK" on the Save As dialog with our format selected, we want a UI to pop up similar to how a UI pops up for JPEGs. We also want the UI to look like and respond to the theming of Photoshop, thus the usage of CEP. To implement this we are loading our CEP extension via PlugPlug in the OptionsStart call. Then, on the WriteStart, which is on a background thread, we block until we receive an event from the CEP UI indicating that the user either hit OK or Cancel, or closed the dialog. If the user cancels, we return *result = userCanceledErr from WriteStart.
The problem is that we are experiencing "Could not save file ... because of a program error" errors as well as crashes (access violation, invalid handle, etc, always in Photoshop code) maybe 1 out of 5 saves. After paring down our code until it was a noop (the only thing we were doing was setting *result = userCanceledErr in WriteStart) we still experienced crashes. Sometimes the crashes would occur before WriteStart was even called.
I then took the SimpleFormat example and stripped it down to the same noop and it was stable. Then, I set SupportsBackgroundSave in the PIPL, and blew away my Preferences. With SupportsBackgroundSave enabled, the SimpleFormat example also crashes.
I am compiling with Visual Studio 2015 14.0.25420.1 Update 3 and have also tried Visual Studio 2017 15.6.2. We are targetting 64 bit. The compiler version doesn't seem to make a difference. We are also developing for Mac but have only seen this instability on Windows.
We are also now aware that unfortunately background save is not a guarantee as the user can disable it in preferences. We are assuming most people aren't going to touch this setting, and in that case we plan on informing them they must enable background saving to save to our file format. As far as we can tell, there would be no way to integrate our workflow using CEP without having the background save thread.
The documentation says "Formats that rely on Globals, Mac resource manager, or show UI after the formatSelectorWriteStart entry should not allow background save." We have an example of a noop that crashes Photoshop. Is there anything special we need to do to support background save, or is this a bug in Photoshop? CC 2017 does not exhibit this behavior, nor does the Mac version of Photoshop.
Example output:
trace:PluginMain selector is 5
trace:PluginMain selector is 6
trace:PluginMain selector is 8
trace:PluginMain selector is 9
trace:PluginMain selector is 10
trace:PluginMain selector is 12
Unhandled exception at 0x00007ff96a334d7b in Photoshop.exe: 0xC0000374: A heap has been corrupted.
I am new to Photoshop plug-in development and I'm still finding my way around the API. I am writing an Export plugin, I would like to first save the current image as a TGA file, if possible I would like to let everything run just as if the user selected File->Save and selected Targa. Then before the plug-in completes, I want to do additional processing on that TGA file to generate other data. I have been able to save a bitmap using windows GDI+, but I'm hoping there is some API code that I can make use of directly.
Thanks!
JXR plugin is not working in adobe photoshop creative cloud
Hello!
I'm in the process of figuring out the basics of creating Photoshop plugins using the SDK. Seems like most of the info and tutorials are somewhat dated and not so approachable. I have been able to build the Listener and Getter examples from the SDK using VS2015 and had Listener spitting out correct-seeming output. Now I would like to set up a Hello World project so that I understand the bare essentials required for a PS SDK Automation plugin. For my personal use I'm only interested in the Win version, but it seems easy enough to set things up so that Mac can be added later. I'm mostly a scripting guy with a tiny bit of C++ experience and I do not often set up Visual Studio projects. Here's what I've gathered so far:
Dir structure:
HelloWorldPlugin
HelloWorldPlugin\common
HelloWorldPlugin\win
(HelloWorldPlugin\mac)
Common files:
* PiPL (Plug-in Property List) describing what kind of plugin this is (e.g. HelloWorldPlugin\common\HelloWorldPluginPiPL.r). I stitched up a version that seems like it could work in todays world with 64-bit machines taken into account. It is a combo of code from Automation Tutorial.pdf from the SDK and some forum post somewhere. Here: HelloWorldPluginPiPL.r - Pastebin.com
* A source file with an entry point (duh :P). I'm working in C++ so this could be a function called PluginMain inside HelloWorldPlugin\common\HelloWorldPlugin.cpp. The function name is defined in the PiPL.
Windows/Visual Studio setup:
* Photoshop SDK includes in the VS Include Directories (e.g. $(PhotoshopSDK)\photoshopapi\photoshop;$(PhotoshopSDK)\samplecode\common\includes [TODO: add rest of paths])
* Build PiPL info into the plugin (using Cnvtpipl.exe on Win), specifics unclear
* Output a DLL with .8li extension (VS Project Properties > Configuration Properties > General > Target Extension)
...aaaaand I think that's all I have for now. It's still unclear for me what are the bare essential contents of the main source file and PluginMain. If the only function of the plugin is to trigger an alert saying 'Hello World!', which \samplecode\common\includes\PI[SomethingSomething].h header files do I need to include if any? Which function do I use to actually trigger the alert!? On the Windows side, which resource files (e.g. resource.h, HelloWorldPlugin.rc) are absolutely essential and how to generate them? Have I missed something completely?
I'll keep on scanning the docs and the web for answers to my questions, but I wanted to write all this down just to clarify my thinking a bit and possibly attract tips from someone more knowledgeable.
Is there a way to run a jsx file from within a plugin?
I want to run the jsx file directly rather than running the script string.
Also, during execution of the jsx file, the plugin will wait and be able to receive the results.
I know there are some php scripts working fine with web for meme generator. As we know memes are trending and it's a part of photo editing, So I want to embed meme generator on my blog Happy Birthday Meme but facing issue with my script. Hope adobe will release a meme generator soon for us. Thank You
i am running an older version of adobe photoshop. i have adobe photoshop 7.0. i need a dds plug-in and i can't find the one i need. i was hoping someone could send me a link to the right page. i would so appreciate it.
[Title edited for question clarity and future forum search... Mod]
Hi all,
Thanks for reading my post.
I am going to develop a new photoshop plugin but I am new in this area but I have rich experience of C++ development so I think, I can do.
But I need some help since I stand at starting point.
I am going to build above plugin. I just downloaded photoshop plugin sdk. Is it enough to develop such plugin?
And I also heard that Filter Meister is good for plugin development. which is the correct way to build above plugin?
The GUI should be same with the photo.
Will be very happy if someone help me.
oh forgot it, Happy new year!!!
I'm implementing a new version of my plugins using OpenGL for proxy display, and I've run up against a roadblock I'm having some trouble getting around...
My plugins add lighting effects, and I've coded them use "Screen" mixing in the final rendering. This is much like what happens in Photoshop proper using "Screen" layer mixing mode.
The key here is that light is only added, so a partially transparent effect over the top of the image only LIGHTENS the image, but no matter how bright the image or the effect, the result only approaches 1.0 (max white) and does not exceed it.
Basically the math for the desired "Screen" mixing is the following (where Alpha is Opacity of the effect being added):
ResultColor = ( (1 - Alpha ) * ExistingColor ) + ( Alpha * (1 - (1 - NewColor) * (1 - ExistingColor)) )
Visually, this is the desired effect:
.
My problem is, OpenGL doesn't seem to offer enough programmability in the mixing stage to allow me to emulate "Screen" mixing. The closest I seem to be able to get in OpenGL is one of these two functions:
This (similar to blend mode "Normal" in Photoshop), which shows dimming:
ResultColor = ( (1 - Alpha ) * ExistingColor ) + ( Alpha * NewColor )
or the following (similar to blend mode "Add" in Photoshop), which shows white-out:
ResultColor = ExistingColor + ( Alpha * NewColor )
Unfortunately, as you can see (if you look closely) the former dims the brightest part of the highlight if a color dimmer than the existing color is applied, and the latter, while only lightening the image, can generate a result as high as 2.0 (where white is 1.0). The visual result of this is white-out.
Do you know of any way to reprogram the alpha blending stage to accomplish the more complex desired "Screen" blending algorithm?
-Noel
I have a Photoshop CS5 panel that I want to have the functionality to save/load preset values.
I used a Local Shared Object in Photoshop CS4. Worked fine. WOuld not work with Photoshop CS5. Compiles but does not work. So, I rewrote the code to use getCustomOptions and putCustomOptions. Again, compiles without a warning or error, but the code does nothing.
It acts like the functions are unimplemented code stubs.
Does anyone have a suggestion for saving/loading runtime values with Photoshop CS5.
I'm using Flex4 Standard. Code samples follow.
Thanks,
Mitch
/** Handle Photoshop Registry **/
privatefunction getSharedObject():void{
try {
// Fetch settings from Photoshop Registry
var defaultsExist:Boolean = true;
var desc:ActionDescriptor = Photoshop.app.getCustomOptions("TLRCapturePro.PanelVersion");
// If DefaultsExist was reset to false, load PanelVersion;
if (defaultsExist == false) { desc = Photoshop.app.getCustomOptions(
"TLRCapturePro.PanelVersion") }
// If settings are from older verison, create and save them;
if (desc.getString(0) != panelVersion){ resetDefaults(); flushSharedObject(); } desc = Photoshop.app.getCustomOptions(
"TLRCapturePro.PresetDefault"); PresetSetting = desc.getInteger(0); desc = Photoshop.app.getCustomOptions(
"TLRCapturePro.USMDefaults"); USMAmountSetting = desc.getInteger(0); USMRadiusSetting = desc.getInteger(1); USMThresholdSetting = desc.getInteger(2); desc = Photoshop.app.getCustomOptions(
"TLRCapturePro.LayerBlendDefault"); LayerBlendSetting = desc.getInteger(0); desc = Photoshop.app.getCustomOptions(
"TLRCapturePro.LayerOpacityDefault"); LayerOpacitySetting = desc.getInteger(0); desc = Photoshop.app.getCustomOptions(
"TLRCapturePro.MaskWidthDefault"); MaskWidthSetting = desc.getInteger(0); desc = Photoshop.app.getCustomOptions(
"TLRCapturePro.BlendIfDefaults"); SharpeningBlendIf1Setting = desc.getInteger(0); SharpeningBlendIf2Setting = desc.getInteger(1); SharpeningBlendIf3Setting = desc.getInteger(2); SharpeningBlendIf4Setting = desc.getInteger(3); UnderlyingBlendIf1Setting = desc.getInteger(4); UnderlyingBlendIf2Setting = desc.getInteger(5); UnderlyingBlendIf3Setting = desc.getInteger(6); UnderlyingBlendIf4Setting = desc.getInteger(7); desc = Photoshop.app.getCustomOptions(
"TLRCapturePro.UseEnhancedMasksDefault"); UseEnhancedMasksSetting = desc.getBoolean(0); desc = Photoshop.app.getCustomOptions(
"TLRCapturePro.RetainAlphaChannelsDefault"); RetainAlphaChannelsSetting = desc.getBoolean(0); desc = Photoshop.app.getCustomOptions(
"TLRCapturePro.PresetList"); PresetList =
new XMLList(desc.getString(0)); PresetLabelList =
new XMLList(PresetList.preset.attribute("label")); }
catch(error:Error) { resetDefaults(); flushSharedObject(); defaultsExist =
false; } }
privatefunction flushSharedObject():void{
try {
var desc:ActionDescriptor = new ActionDescriptor; desc.putString(0,panelVersion); Photoshop.app.putCustomOptions(
"TLRCapturePro.PanelVersion",desc,true); desc =
new ActionDescriptor; desc.putInteger(0,USMAmountSetting); desc.putInteger(1,USMRadiusSetting); desc.putInteger(2,USMThresholdSetting); Photoshop.app.putCustomOptions(
"TLRCapturePro.USMDefaults",desc,true); desc =
new ActionDescriptor; desc.putInteger(0,LayerBlendSetting); Photoshop.app.putCustomOptions(
"TLRCapturePro.LayerBlendDefault",desc,true); desc =
new ActionDescriptor; desc.putInteger(0,LayerOpacitySetting); Photoshop.app.putCustomOptions(
"TLRCapturePro.LayerOpacityDefault",desc,true); desc =
new ActionDescriptor; desc.putInteger(0,MaskWidthSetting); Photoshop.app.putCustomOptions(
"TLRCapturePro.MaskWidthDefault",desc,true); desc =
new ActionDescriptor; desc.putInteger(0,SharpeningBlendIf1Setting); desc.putInteger(1,SharpeningBlendIf2Setting); desc.putInteger(2,SharpeningBlendIf3Setting); desc.putInteger(3,SharpeningBlendIf4Setting); desc.putInteger(4,UnderlyingBlendIf1Setting); desc.putInteger(5,UnderlyingBlendIf2Setting); desc.putInteger(6,UnderlyingBlendIf3Setting); desc.putInteger(7,UnderlyingBlendIf4Setting); Photoshop.app.putCustomOptions(
"TLRCapturePro.BlendIfDefaults",desc,true); desc =
new ActionDescriptor; desc.putBoolean(0,UseEnhancedMasksSetting); Photoshop.app.putCustomOptions(
"TLRCapturePro.UseEnhancedMasksDefault",desc,true); desc =
new ActionDescriptor; desc.putBoolean(0,RetainAlphaChannelsSetting); Photoshop.app.putCustomOptions(
"TLRCapturePro.RetainAlphaChannelsDefault",desc,true); desc =
new ActionDescriptor; desc.putString(0,PresetList.toXMLString()); Photoshop.app.putCustomOptions(
"TLRCapturePro.PresetList",desc,true); }
catch(error:Error) { Alert.show(
"Error in flushSharedObject(): " + error.message, "Error!", Alert.OK, Sprite(mx.core.Application.application)); } }
privatefunction resetDefaults():void{
try { PresetList =
new XMLList(
<presets> <preset label="(None)" settings="300,0.8,0,1,65,1,30,50,100,195,25,50,80,200" canDelete="false" canEdit="false" /> <preset label="HRDC: Wide Edges" settings="275,1,0,1,65,0,30,50,100,195,25,50,80,200" canDelete="false" canEdit="false" /> <preset label="HRDC: Medium Edges" settings="300,0.8,0,1,65,1,30,50,100,195,25,50,80,200" canDelete="false" canEdit="false" /> <preset label="HRDC: Narrow Edges" settings="300,0.6,0,1,65,2,30,50,100,195,25,50,80,200" canDelete="false" canEdit="false" /> <preset label="HRDC: Extra Narrow Edges" settings="325,0.5,0,1,65,3,30,50,100,195,25,50,80,200" canDelete="false" canEdit="false" /> <preset label="MRDC: Wide Edges" settings="150,1,0,1,65,0,10,40,140,250,10,40,140,250" canDelete="false" canEdit="false" /> <preset label="MRDC: Medium Edges" settings="150,0.7,0,1,65,1,10,40,140,250,10,40,140,250" canDelete="false" canEdit="false" /> <preset label="MRDC: Narrow Edges" settings="150,0.6,0,1,65,2,10,40,140,250,10,40,140,250" canDelete="false" canEdit="false" /> <preset label="MRDC: Extra Narrow Edges" settings="175,0.5,0,1,65,3,10,40,140,250,10,40,140,250" canDelete="false" canEdit="false" /> <preset label="LRDC: Wide Edges" settings="65,2.5,0,1,65,0,0,0,140,250,10,40,140,250" canDelete="false" canEdit="false" /> <preset label="LRDC: Medium Edges" settings="65,2.5,0,1,65,1,0,0,140,250,10,40,140,250" canDelete="false" canEdit="false" /> <preset label="LRDC: Narrow Edges" settings="60,2.5,0,1,65,2,0,0,140,250,10,40,140,250" canDelete="false" canEdit="false" /> <preset label="LRDC: Extra Narrow Edges" settings="60,2.5,0,1,65,3,0,0,140,250,10,40,140,250" canDelete="false" canEdit="false" /> <preset label="SFS: Wide Edges" settings="300,0.8,0,1,65,0,0,0,180,250,10,30,180,250" canDelete="false" canEdit="false" /> <preset label="SFS: Medium Edges" settings="325,1,0,1,65,1,0,0,180,250,10,30,180,250" canDelete="false" canEdit="false" /> <preset label="SFS: Narrow Edges" settings="350,1,0,1,65,2,0,0,180,250,10,30,180,250" canDelete="false" canEdit="false" /> <preset label="SFS: Extra Narrow Edges" settings="400,1,0,1,65,3,0,0,180,250,10,30,180,250" canDelete="false" canEdit="false" /> <preset label="LFS: Wide Edges" settings="375,1.7,0,1,65,0,0,180,0,250,10,30,180,250" canDelete="false" canEdit="false" /> <preset label="LFS: Medium Edges" settings="375,1.2,0,1,65,1,0,0,180,250,10,30,180,250" canDelete="false" canEdit="false" /> <preset label="LFS: Narrow Edges" settings="400,1.3,0,1,65,2,0,0,180,250,10,30,180,250" canDelete="false" canEdit="false" /> <preset label="LFS: Extra Narrow Edges" settings="400,1.2,0,1,65,3,0,0,180,250,10,30,180,250" canDelete="false" canEdit="false" /> </presets> PresetLabelList = XMLList(PresetList.preset.attribute(
"label")); PresetSetting = 0; USMAmountSetting = 300; USMRadiusSetting = 0.8; USMThresholdSetting = 0; LayerBlendSetting = 1; LayerOpacitySetting = 65; MaskWidthSetting = 1; SharpeningBlendIf1Setting = 16; SharpeningBlendIf2Setting = 24; SharpeningBlendIf3Setting = 208; SharpeningBlendIf4Setting = 224; UnderlyingBlendIf1Setting = 24; UnderlyingBlendIf2Setting = 32; UnderlyingBlendIf3Setting = 176; UnderlyingBlendIf4Setting = 208; UseEnhancedMasksSetting =
false; RetainAlphaChannelsSetting =
false }
catch(error:Error) { Alert.show(
"Error in resetDefaults(): " + error.message, "Error!", Alert.OK, Sprite(mx.core.Application.application)); } }