|
Adobe Photoshop SDK |
|
What is new in CS4?Photoshop is now running native on 64 bit processors. See more information about making 64 bit plug-ins here. What is new in CS3?A large portion of the documentation has moved to an HTML format produced from doxygen. You are reading that right now. This gives a better overall picture of the SDK and easier navigation between topics. The sections to the left are the primary navigation for the SDK documentation.Adobe Photoshop CS3 is now a Universal binary. Your plug-in needs to be a Universal binary as well to support the MacTel operating system. Apple's Xcode development environment is the recommended way to create a Universal binary. See the Making Xcode Projects for Mac OS section to learn how to move your plug-in to the Xcode environment. All shipping plug-ins are using the bundle method. You see one file that looks like a plug-in but it is actually a bundle with all the parts inside. See the section below Bundling Plug-Ins. Two new plug-in types for this version.
3D support
File Format plug-ins can now open multi-layered files. Smart filters for non-destructive editing. See Dissolve example.
Bundling Plug-InsPlug-ins that ship with Adobe Photoshop CS3 and CS4 are now inside bundles. Below is the directory layout for the Dissolve plug-in. The Xcode project settings are given below.
Dissolve.plugin/Contents/MacOS/Dissolve Dissolve.plugin/Contents/Info.plist Dissolve.plugin/Contents/PkgInfo Dissolve.plugin/Contents/Resources/Dissolve.rsrc The first item is the actual plug-in, the binary executable. The second item is the package info created by Xcode containing the creator and type information to make the package icon for Finder. The third item is the resources for the plug-in in binary form. The Dissolve example is the only example that shows a Universal binary configuration. The Dissolve example actually shows 6 different build configurations. Debug_PPC, Debug_i386, Release_PPC, Release_i386, Debug_Universal and Release_Universal. Apple Xcode debugging
To installUn-zip the archive. Be sure to keep the folder structure intact. The project settings use relative paths to locate common files for all projects.On Windows, ignore the __MACOSX folder contents. The zip file is created on a Macintosh for both platforms and there is an extra folder present after the un-zipping. The documentation included on this kit requires Acrobat Reader to view it. To download a copy of Acrobat Reader free of charge, go to http://www.adobe.com/. Apple XcodeAll the Macintosh projects in this SDK were tested using Apple Xcode environment, Version 2.4.1. This is the recommended version for building a plug-in for Photoshop.Microsoft Visual StudioAll the Windows projects in this SDK were tested using Microsoft Visual Studio 2005 Version 8.0.50727.42 (RTM.050727-4200) This is the recommended version for building a plug-in for Photoshop.MemoryAlways ask Photoshop for large amounts of memory. See Memory Management for more information.C++ exceptionsIf you turn on C++ exceptions in your plug-in project make sure you wrap all of your call backs with try/catch blocks. You do not want to throw back into Photoshop. This will cause Photoshop to disappear without a warning to the user. Make sure your try/catch blocks are around your PluginMain routine and any OS proc, say for your Dialog routine.Clean UpThe SDK has gone through some clean up for this version. The C++ wrapper classes for plug-in types have been removed. Along with some of the sample projects. This is around an effort to consolidate the examples. The goal is to have one example for each plug-in type that exposes the key features of the API. There is little value added in wrapping an API in an API and it makes maintenance very difficult. The following projects have been removed: shape and selectorama examples have combined into the selectoramashape example. |