Sunday, April 4, 2010

Drawing Inaccuracies

Hi guys,



I wanted to discuss how Photoshop handles drawing inaccuracies.



A user enters or sets up the canvas size in units he/she is familiar with (i.e. mm or inches). A user can also enter decimal values like 604.8mm for the Canvas height. User then selects the DPI eg- 72 DPI.



Now Photoshop on the screen displays/draws it in pixels. So (604.8*72)/25.4 = 1714.3937 pixels.



It seems Photoshop rounds this value and only creates a canvas with height 1714 pixels.



Now say you are laying out images on this canvas and the left, top, width and height of that image on the canvas are also entered by the user in mm. If you are trying to center the image on the canvas, clearly because of rounding of the pixel values, mathematically, the image might not be centered correctly. If we take out a print out, of this canvas, the image on the canvas is not accurately centered mathematically. Or is it? Does Photoshop automatically take care of these inaccuracies? If so, how?



Any help in this matter is highly appreciated.

Thanks

Regards,



Chetan
Drawing Inaccuracies
This might be better posted to the main Photoshop forum vs the SDK forum. I don't see how this is an SDK issues.
  • help blackheads
  • Dynamically Declared Properties in PS...

    Now Im developing a plug-in for Photoshop CS3, and I want to dynamically change its properties rather than statically define them in PiPL.



    But Photoshop never send message ''SP Properties'' to my plug-in, so I have no chance to handle SPPropertiesMessage. Id like to appreciate if anyone could let me know how to let PS send message acquiring properties or whether PS really support this kind of approach, thanks!
    Dynamically Declared Properties in PS...
    PS does not support that kind of approach. PS does not support all of the SP API's. The static PiPL property is all you have for defining a plug-in. (Helps our launch time for warm launch)

    Convert16to8 uses a short for count?!?

    I'm trying to use the Color Space suite to convert 16-bit image data to 8-bit so that I can draw it. First, why in hell can't Photoshop plugins draw 16-bit image data, when Photoshop itself clearly can? Grrr...



    OK, so much for the ranting. Now, can anyone tell me whose genius idea it was to make the ''count'' parameter to Convert16to8 a short? What good does it do to restrict us to 32768 pixels? That's a very small image! Am I misunderstanding the use of this parameter?



    Also, this function seems to divide the 16-bit pixel values by 128 in order to get the 8-bit values. Anybody know why it's 128 and not 256? Are 16-bit pixel values signed?



    Thanks,

    Aaron
    Convert16to8 uses a short for count?!?
    1. Photoshop images and the plugin API has historically been limited to 30,000 pixels. There is now an extended API (and PSB file format) that raises this.



    2. Photoshop really stores only 15 bits (plus one value) for 16 bit data. Plugins will see values from 0 to 0x8000 inclusive, which correspond to the 0-0xffff range you were probably expecting.



    I hope that clarifies ... something.
    Convert16to8 uses a short for count?!?
    Isn't it 30,000 pixels on a side? 30,000 pixels total would be a *very* small image, unrealistically so (VGA is over 10 times that!)



    Thanks for the clarification about the 15-bit limit.



    Aaron

    On a side, yes.

    Unfortunately, the count in Convert16to8 is the actual number of pixels. That means that it's totally useless for converting an image buffer of any size.

    Is there a major obstacle to calling it in a loop convering 32K chunks

    then the remainder?



    Aandi Inston

    No, it just complicates the code unnecessarily and introduces a potential perfomance hit. It's easier to write the thing myself in that case, which in fact is what I've done. It just seems to be a foolish interface decision, unless there is some other factor that I'm not aware of that's constraining the size of the buffer being passed in.



    Thanks,

    Aaron

    PhotoShop CS2 Problem

    Whenever I open up Photoshop CS2, it gives me this error message:



    ''An Error has been detected with a required application library and the product cannot continue. Please reinstall the application.''



    I've already reinstalled it twice. Does anyone know how to fix this? Please be detailed.
    PhotoShop CS2 Problem
    Please respond.
    PhotoShop CS2 Problem
    Anyone know?

    How to Record mouse click position...

    I want to write a plug-in that records all the mouse clicking position coordinates while using a polygon lasso tool. How can I get those? I have been reading through the API, but I see none of the functions that does so. Is there a way to record the x and y coordinates in an image. (Assumption: Only one layer).
    How to Record mouse click position...
    You cannot get those in the C SDK supplied by Photoshop. Your only option would be to use OS calls but I do not know how you would go about that.
    How to Record mouse click position...
    Thank you Tom.



    I have another doubt in this concern. Whenever we place the pointer on the image, we can see the x and y coordinates in the info pane. Is it possible to track in that way?

    Hi

    Hi,

    Is there any freeware available which can record the mouse action and play it again. I want to implement it for regression and sanity testing for application(web).I want to automate the these testing.

    Please suggest.



    Thanks in anticipation.

    Lalit.

    %26gt; Is there any freeware available which can record the mouse action and play it again.



    In Photoshop alone?



    Aandi Inston

    You could find the hwnd of what ever window you want to get the mouse information from then subclass it, then you will get all windows messages (WM_MOUSEMOVE, WM_LBUTTONDOWN etc). This is assuming you are using windows only.



    I wouldn't have a clue about any other OS.

    SDK and scripting

    Hi,

    I'm not sure what the Photoshop SDK is used for but can someone please tell me if I can use the SDK to supplement Photoshop scripting since there are many things in Photoshop that scripting doesn't support.



    Thanks
    SDK and scripting
    No, the C SDK is used for writing plugins to enhance Photoshop. Not plug-ins to enhance scripting. The scripting interface for example is implemented in a plug-in. ScriptingSupport plug-in.
    SDK and scripting
    %26gt; I'm not sure what the Photoshop SDK is used for but can someone please tell me if I can use the SDK to supplement Photoshop scripting since there are many things in Photoshop that scripting doesn't support.



    If you need to extend the JS interfaces in PS, you can build and load external

    C/C++ code and libraries into a JS interpreter. It's described in the JavaScript

    Tools Guide CS3.pdf in Chapter 7. It doesn't appear from what's in the docs or

    in what Tom said that getting to access to the PS SDK from one of these external

    libs is possible. It would be nice, but even if it were possible, there are some

    serious restrictions on the JS object model actually supported by this interface.



    -X

    Getting the profile name from an...

    I'm need to be able to discern between an image with a Adobe RGB profile and the standard sRGB profile from within an automation plug-in.



    The route I've been exploring consists of looking for the profile name and comparing it to the standard names, but I cannot find the a way to do this from automation.



    Any thoughts?
    Getting the profile name from an...
    Run the Getter example and look for a Getter.log file either on your desktop or at the c:\Getter.log location. Open up two documents with different profiles then run the example. Look for a document info and it will show you all the properties you can get on the document. I think the profile comes in two pieces. An enum telling you if it is using the color settings default or a string if it is not the default. Meaning, you might have to look in two places. The document info and then the application info for your color settings setup.
  • help blackheads
  • Filter plugin user interface

    I'm trying to write a filter plugin on the Mac, and I'm having a hell of a time getting any user interface up.



    I initially started trying to modify the Dissove UI, like everybody does. After several hours trying to hack the .R file, I eventually decided that there had to be a better way than using all of this 1994 crap. I went looking for an alternative.



    I did an Illustrator plugin recently that used ADM for its UI, and created all of its controls programmatically (to avoid having to use the ****** .R format that nobody supports any more), so I tried that approach here. Unfortunately, it appears that you can't use ADM in a filter plugin, because it doesn't get an SPPluginRef in its main entry point. Can this be true?



    Is there a better way to do UI in a filter plugin on the Mac? It's pathetic that Adobe is stuck in the last century - not that I'm a big fan of Cocoa, but at least it's supported on current OS versions!



    Thanks for any assistance or advice,

    Aaron
    Filter plugin user interface
    It just occurred to me that I might use HIView with a Carbon nib file. Has anybody tried this? Can anybody confirm that this will or will not work, or point out any pitfalls to avoid?



    Thanks,

    Aaron
    Filter plugin user interface
    I don't see the problem with using Rez resources. Current versions of OS X include the resource compiler and decompiler.



    See http://telegraphics.com.au/sw/ for dozens of plugin source code examples which build and run on OS X through Photoshop CS4.

    The problem is that, while the Rez format is supported by built-in tools, the resulting .rsrc file is not. For example, there's no way (that I know of) to visually edit dialog layouts other than buying the ridiculously-expensive and largely-obsolete Resourcerer.



    Bottom line, the whole technology is obsolete. It locks you into using crappy old mostly-deprecated Apple APIs, requires bizarre workarounds like LDEFs, and doesn't allow you to access all the capabilities of OS X.



    I've got a Carbon UI working now using a NIB file, and I'm much happier. No real problems making it work under Photoshop. Now, if I could just get this damn DataBrowser control to call my callbacks...



    Thanks,

    Aaron

    It depends a bit on the complexity of the UI, I think. For simple interfaces Rez can be just fine.



    There is ResEdit as a free resource layout editor, but the claim that it's aging has some merit: I first used that program about 22 years ago. :)

    There should be a SPPluginRef in the FilterRecord. Look towards the bottom I think after version 5 maybe. I would not suggest using ADM as we are looking to remove it as it doesn't work well in the new world of 64 bit architectures. Although creating your dialog in a text based format is not nice it is nice when you start doing diffs and managing it in source control. I wish I had a better answer for you but...

    import metadata to jpeg files

    i want to import massively metadata to jpeg files.

    Can you help me to import metadata such as keywords.

    I have already tried with xmp toolkit of Adobe but the metadata

    is not readable from file info in Adobe Photoshop CS2

    What seems to be the problem ?

    I 'm using windows xp

    does ColorSpaceSuite...

    Hi,



    I'm trying to use ConvertToMonitorRGB to convert from the image profile space to the monitor color space, in the same way that photoshop display it.

    From what I understand from the doc, it seems the good function to do it.



    However the following piece of code :



    %26gt; Color8 src;

    src [0] = 0;

    src [1] = r;

    src [2] = g;

    src [3] = b;



    %26gt; Color8 dst;

    SPErr err = _color_space_suite.ConvertToMonitorRGB (

    plugIncolorServicesRGBSpace,

    %26amp;src,

    %26amp;dst,

    1

    );



    will return 'Parm' for err.

    It will return 'Parm' also if I replace 1 by 3 or 4 in the function call. (the actual color number seemed more logical to me, whereas the documentation seems to account for all channels)



    I've been trying with CS3 on Mac if that matters, but do someone see where is my error ?



    Thanks for any advice on that issue,



    Raphael

    Needs to know photoshop status via...

    Hi all,

    is there any way to monitor the status of photoshop.

    eg. i am writing some characters on the image by text tool. at this moment, all the events in Filter menu are not available.

    how can i get that status information through listener plugin ?



    Regards
    Needs to know photoshop status via...
    You cannot get that information via the Photoshop API. The listener plug-in will get the completion of commands. When the command has completed, making a type layer in your example, the listener will get called with all the parmaters that made up that layer.

    Plugins built with CS3 SDK compatible...

    Sorry if this is obvious, but I haven't found a definitive answer in the documentation or in the forums. If I build a plugin with the CS3 SDK (either on Windows or OS X using Xcode), will it work in earlier versions of PS? How far back? Is the CS2 SDK more compatible with earlier versions?



    Thanks,

    Aaron
    Plugins built with CS3 SDK compatible...
    Not so very obvious, then? Nobody has tried this?



    Aaron
    Plugins built with CS3 SDK compatible...
    Plug-ins compiled with the CS3 SDK should work fine under earlier Photoshop versions for the most part. The features and suites you use will determine how far back your compatibility goes. You can usually figure out from the documentation and header files when various features were introduced. (e.g. for filter plug-ins, the filter record fields are grouped in chronological order.) Just be sure not to use any new features of CS3. (As for what they are exactly, I guess that's for you to figure out. :) The easiest way to ensure compatibility is to use the earliest version of Photoshop you want to support as your development environment; that way, any unsupported callbacks you try and use will return error codes and you will know not to use them.



    -- Matthew

    Thanks for the answer, much appreciated.

    Matthew's answer applies to Windows plugins. On OS X, the short answer is if you build a Mach-O universal (PPC+Intel) plugin for CS3, CS2 and earlier versions won't load it.



    Unlike the single flavour of Win32 plugin, there are at least 5 plugin executable formats supported on the Mac, spanning 3 processor architectures and 15 years of operating systems from System 6 through OS X. I'm not sure if Adobe publishes a clear compatibility matrix, but you can ask here for more specifics.

    interpolate2d question.

    We are working on a cross platform plugin. We are calling interpolate2DProc on our preview channels to scale our preview (our preview uses channels that we have created to show the effect of a algorithm on export).



    On the windows side we this works great no matter how many times we call it. However, on the Mac in OSX, we can only call it once then when we call it again we get 0 returned back from the call but the channel's data has not been modified.



    Is there a problem with this call in CS2 and on the Mac? Are we supposed to call somehting else to reset a state? Is there an example using the ImageServiceProcs anywhere new or old?



    Scott Andrew
    interpolate2d question.
    No, the call works the same on both platforms.



    Somewhere your code is not calling it the same, or is corrupting data differently, on each platform.
  • help blackheads
  • GPU Photoshop Plugin

    Hi,



    If anyone is interested, there's a GPU photoshop plugin available at: http://www.nvidia.com/object/get_cuda2_beta.html



    It includes some source code to help get started programming, as well as an example of image deconvolution with FFTs, and a histogram adjustment implemented on the GPU.



    -James

    Edite Plugin

    hi all



    i want edit a plugin, how?



    thanks
    Edite Plugin
    Some starting questions:



    Do you have the source code of the plug-in?

    Do you have the Photoshop SDK?

    What version of Photoshop was it compiled for?

    Is it Mac or Windows?



    Aandi Inston
    Edite Plugin
    {Do you have the source code of the plug-in?

    Do you have the Photoshop SDK?}



    No i have not source code And Photoshop SDK



    {What version of Photoshop was it compiled for?}

    For CS3



    {Is it Mac or Windows?}

    is Windows

    You cannot edit a plug-in without the source code of the plug-in (and

    the other things).



    Aandi Inston

    thank you Aandi Inston.

    but how to create a plug in ???

    %26gt;but how to create a plug in ???



    To create a plug-in you would need

    * Programming expertise in the required language (maybe C++)

    * A suitable compiler for that language (only one is recommended)

    * The Photoshop SDK, which has the required information to allow an

    experienced programmer to create plug-ins.





    Aandi Inston

    how to download Photoshop SDK ?

    %26gt;how to download Photoshop SDK ?



    You apply to Adobe. Start on

    http://partners.adobe.com/public/developer/photoshop/devcenter.html





    Aandi Inston

    i went to link



    but it [You are not authorized to view this content.] on the page

    That sounds normal if you have not been accepted by Adobe for the SDK.

    Have you applied for it?



    Aandi Inston

    I have just register.



    what should applied for it?

    Please see the page...



    ''Download the Photoshop SDK

    If you have ALREADY BEEN GRANTED access to the Photoshop SDK, you can

    download ''



    You must click

    ''Get access to the Photoshop SDK''

    Adobe will not always give the SDK. They have to like your idea. So

    please be ready to explain your idea in detail.



    Aandi Inston

    Add Menu In Photoshop

    hi all



    i have some plugins for photoshop, and want create other menu for category my plugins.



    help me



    thanks
    Add Menu In Photoshop
    You get a menu item (and category sub menu for filters) by defining them in your PiPL. See Dissolve and the PiPL resource.



    Name { plugInName ''...'' },

    Category { vendorName },

    Photohop plugin do's and don'ts

    Hi,



    I'm new to the Photoshop plugin scene so please bear with me. I'm trying to determine if a plugin is the right way to go for the work I want to do. I can't seem to find a straight answer in the documentation so I'm turning to the forums.



    The plugin I'd like to write would have to do the following things :

    - Parse all the layers of a document and extract data be it image or text

    - Save that data in individual files



    It seems quite close to what an export plugin can do but I have several questions :

    1) Is this doable in an export plugin ? In any plugin type ?

    2) Is it ok to use new and delete freely in a plugin ?

    3) Is it ok to freely open/write/close any files in a plugin ?



    This plugin would be developped for an internal tool to extract data from a psd file.



    Any help appreciated. I have found that I could probably get this done in a javascript file but I'm still evaluating the technology and wondering if it can be done better/same way in a plugin.



    I'm using CS3 and the corresponding SDK, whose documentation seems quite poor to me.



    Cheers,

    Pascal.
    Photohop plugin do's and don'ts
    1) Yes, the pixel info not the text info. Unless you want the text as pixels.



    2) Yes. For large memory allocations you should use the Photoshop memory suites.



    3) Yes, but I would not open/write/close the currently open documents in Photoshop.



    Look for ReadImageDocumentDesc *documentInfo in the ExportReocrd. Other plug-in types have a similar pointer. Filter, FileFormat that I know of. That pointer has a ReadLayerDesc *layersDescriptor which is a linked list to all the layers. The Poor Mans Type Tool filter example has some of this code as an example.



    Yes, the documentation is lame. Please add some feedback here on exactly what you were looking for and did not find or other verbose feedback and maybe somebody from Adobe will finally listen.
    Photohop plugin do's and don'ts
    Thanks for your answer. It seems that I could probably get it working but doing this in a Javascript seems much simpler.



    As for the documentation, I don't quite understand the structure. The first section should have been describing a very simple plugin with code example. Instead the first tutorial is an external pdf file. The plugin types description is good but I didn't tell me if new was supposed to be used or not or why it shouldn't be. Then I had trouble understanding what can actually be done in a plugin and what shouldn't be done in a plugin.



    I won't be looking at this any further though.



    Cheers,

    Pascal.

    As an alternative to the plugin approach (which might work), I've already written a standalone program (GPL) that does what you need: http://telegraphics.com.au/svn/psdparse/trunk



    (Extracts every layer of a PSD/PSB as a PNG file. Metadata such as layer sizes and positions is optionally extracted to XML.)



    Since the PSD documentation is so incomplete, incorrect, and confusing (assuming you can obtain it at all), you would need several hundred hours to duplicate this effort. A number of things are not documented and therefore not supported by this program, but it is substantially compatible with PSDs at least through CS2.

    Sorry, if I late...

    2Pascal Gane: I have a same task for now. and I am a new too.

    could you help me with a few links for usefull information? I need to do export or autiomation plugin (now stopped on export) and get same information (layers tree). it will be great if You'll can help me.



    wbr Dmitry

    joblst@mail.ru

    We have a third party plug-in that we install for PhotoShop CS3.

    That plug-in disappears from the menu when PhotoShop is upgraded

    from CS3 to CS4 or a localization patch is installed.



    I tried editing tw10428.dat file to add the third party plug-in

    to the menu, but it appears not to work.



    How can I make the add-in to show up?



    Thanks in advance.



    Stephen Moon

    [email deleted]

    It doesn't disappear - it was never there to start with.



    The .dat files have nothing to do with menus or plugins. Why are you even touching that file?



    Just install the plugin in CS4, like you installed it for CS3.



    And what does your problem have to do with this topic or the Photoshop Plugin SDK?

    Maybe, I should start a new topic on this one.



    What do you mean ''it doesn't disappear''?



    When I edit the text in .dat file, it change the text displayed

    on the menu? What do you mean that has nothing to do with it???



    I installed a Korean localization patch and that seems to make

    the plug-in disappear. I tried reinstalling it and it does not

    work.



    Stephen Moon

    [email link deleted]

    Stephen,



    In these forums, all responses are posted here so that everyone can benefit. If you leave your email address, you are inviting spam. A lot of spam.



    Neil

    Hi Tom %26amp; Chris,



    I have a problem with this issues,



    as you mentioned Tom, we could use export plug-in to get each layer of a multilayer psd file, but so far as I found, when I trying to open a export plug-in when the open document is a one layer only psd file, it works well, but when I coming cross the multilayer psd file, the menu would turns into ''Gray''(it been disabled) ...



    I am just using sample code ''Outbound'' to do the test. and what I am using is Adobe Photoshop CS4 SDK + Adobe Photoshop CS2.



    Could you give me some advices?

    Any help will be appreciated.



    Jerry Yu

    Photoshop tag in Tiff

    Hi all,



    I am writing a software that takes a tiff file that is saved using Photoshop CS 2. I am interested in retrieving the thumbnail resources and after some google search I found the id I should be looking for is 1036. However, in the tiff file saved, the resource block has a id of 1061 instead. Does that mean there is no thumbnail available? I checked the documentation it says 1061 is caption digest. How do I parse this structure?
    Photoshop tag in Tiff
    Caption digest is not the thumbnail! Most likely you are looking at only the first resource, not all resources.



    I have code for parsing resource blocks at http://telegraphics.com.au/svn/psdparse/trunk

    Clipping flag

    Hi,



    is it possible from plug-in (e.g. export or other) to retrieve flag

    indicating whether layer is clipping mask or not?

    If yes how please?



    Other question - is it possible to retrieve blending options (shadow, ...)?



    Thank you.



    Ondrej Psencik
  • help blackheads
  • Help! The code getting path information...

    I could draw paths from the listener.log. But some paths are not shown in it. Such as the curve path. What should I do?



    I try to get code from getter plug-in. But it could not work, such as:

    ----------------------------------------------------------------

    error = sPSActionControl-%26gt;Play(%26amp;result, runtimeEventID, desc00002668, plugInDialogSilent);

    if (error) goto returnError;

    ----------------------------------------------------------------

    It is error. Could you tell me what to do?



    Thank you very much.
    Help! The code getting path information...
    Use insert path from the actions panel menu to get a dump of the selected path. That will show up in listener log file.
    Help! The code getting path information...
    Could you describe it more particular?

    I could get some codes from listener log file, such as the rectangle path and ellipse path. But the Bezier curve path could not be shown in listener log file. What should I do?

    Thank you.

    Web Designs

    Hey, I have a website
    NRG Lab. I would like to make a place where people can download free Web 2.0 Templates in PhotoShop. I downloaded a bunch of Web 2.0 Brushes %26amp; Gradients, but for some reason, I cannot install them. I don't get an error anymore, but I used to have an error message that said :



    [something,something,something]

    (OK) (Close)



    Can anyone guide me through step-by-step how to install them? I might be doing it wrong.
    Web Designs
    If you aren't using the Photoshop SDK, I recommend posting in the

    regular Photoshop forum. Good luck,



    Aandi Inston

    Plug-Ins folder paths

    How do people go about installing their plugins on different languages? It seems like Adobe is localizing the name of the Plug-Ins folder depdending on the language the system is installed on or maybe it's their localized installers doing it. In any case, i need to find out the correct paths for these languages:



    English

    French

    German

    Italian

    Spanish

    Japanses

    Simplified Chinese



    Does anyone know where i can find these?



    thx
    Plug-Ins folder paths
    Worth checking if you can find a registry key with this in.



    Aandi Inston
    Plug-Ins folder paths
    This gets asked a lot, so perhaps folks can post information for the languages they know about.



    A German customer of mine reported that the plug-ins directory for CS2 on his Windows XP system is



    AdobeCS2\Zusatzmodule



    And the following subdirectories are localized as follows

    ''Effects'' = ''Effekte''

    ''File Formats'' = ''Dateiformat''

    ''Filters'' = ''Filter''

    ''Import-Export'' = ''Importieren-Exportieren''



    I'd like to know the equivalents for French systems.



    David

    How to use manifest file in Adobe...

    Hi all,

    I am developing the Photoshop Filter plugin using wxWidgets-2.6.2 on PhotoshopSDK CS2 for windowsXP.I am unable to use XP themes in my plugin.Though I have already added the following line in my Plugin .rc file -----%26gt;

    2 RT_MANIFEST ''Plugin.manifest''

    I have also added the ''ISOLATION_AWARE_ENABLED'' in the properties.



    But still I am unable to use XP themes in my Plugin. Please Help!!!



    Regards

    Deepesh Negi

    Devloping video tutorial for disabled...

    Hi, I am a Deaf student, and I am on final year at The University of Huddersfield studying for a BSc in multimedia.



    For my project I am developing of improving existing video tutorials for disabled people.

    I have made a web site for you to look at, and they are two questionnaires could you please take about 5mins of each questionnaire and send it to me.

    The email address is on the questionnaires. The web site will be close on

    the 23rd April 2008.



    Here my web site: http://hermes.hud.ac.uk/c0412144/Project_new/



    Thanks for you time.

    Martin
    Devloping video tutorial for disabled...
    %26gt;For my project I am developing of improving existing video tutorials for disabled people.



    What does this have to do with the Photoshop SDK? Please choose only

    appropriate groups, anything else is likely to be considered as spam. Maybe more importantly for you, messages posted here will only reach a handful of programmers, not people involved in the subject you want to survey.



    Aandi Inston

    ICC profiles and Import plugins

    I have an import plugin that generates an ICC profile for the image. This works fine. But in certain rare configurations, I'd like to import the image without a profile so that it shows up in CS as an untagged image. It seems that I should only have to set the ICC data pointer to NULL to achieve this, but when I do, the current working color space is assigned to the image. I suspect that this is an issue with the color settings in CS, but would like to be sure I'm doing the right thing in my plugin before chasing that down.



    Thanks for any help.
  • help blackheads
  • Photoshop print dialog

    Is there any way to get an event before the print dialog opens in Photoshop?



    thx



    AC

    Unicode and action control

    Hi,



    I'm trying to set the selected profile in the print options section of the Photoshop print dialog. When i try and do this with the profile name using only ascii characters, it works fine, as soon as i put anything else in there, i does not work. Here's the code ( just the important line ) i use:



    sPSActionDescriptor-%26gt;PutString(desc0xf8, keyName, (char*)uniData);



    What type of stirng is this expecting if i want to pass unicode data and are there any ps API's to create that string.



    thanks



    AC
    Unicode and action control
    I don't have an answer, but a general observation:



    If you have an API expecting char * data which does not have a length

    field, you can be pretty sure that it is expecting a null-terminated

    string.



    Clearly, a Unicode string (in the Windows or MacOS meaning of Unicode,

    UCS-2), is not going to function as a substitute for this: it is

    likely to have zero bytes long before the end.



    Some char* routines would accept UTF-8 Unicode data, but you'd expect

    the documentation to say so. You could try it, however.



    Aandi Inston

    First-chance exception at 0x7c812a5b in...

    When I compile the Dissolve filter example code and run it while debugging it (Windows platform), I get the following error code in the Output window:



    First-chance exception at 0x7c812a5b in Photoshop.exe: Microsoft C++ exception: [rethrow] at memory location 0x00000000..



    Is this normal? Is it ok to have this?



    This happens when I change the image to a smart object, apply the filter but hit cancel.

    How to draw the curve path in plug-in?

    We want to draw B茅zier curve path in automation plug-in. Could you tell me how to come true? Thanks.
    How to draw the curve path in plug-in?
    I could draw paths in automation plug-in from the listener.log. But some paths are not shown in it. Such as the B茅zier curve path. Could you tell me how to draw it? Thanks a lot.

    use EXTENSION plug-in to Catch...

    as mentioned in the automation tutorial document, eventall can only catch the scriptable event. the none scriptable actions such as costom cursor-drawing cannot be catched.

    But Kas Thomas has mentioned that the extension plug-in is used to catch the low-lwvwl tasks like custome cursor-drawing.

    is there anyone knows how to use this plug-in?
    use EXTENSION plug-in to Catch...
    I too would love to create an Extension plugin but I don't think you can with the SDK.



    From ''Photoshop API Guide.pdf'':



    ''Extension

    Extension modules allow implementation of session-start and session-end

    features, such initializing devices. They are called once at application

    execution, once at application quit time, and usually have no user interface.

    Their interface is not public.''



    Note at the end it says ''Their interface is not public.'' :(



    Why not you might ask? Good question...



    I've kinda worked around this by making an automation plugin and calling it via command line when Photoshop starts.



    Seeyas!



    G

    Is it possible to use a progress bar in...

    Hi,



    I'm developing an automation plug-in to Photoshop. It take long time to do the work, I therefore want to start a none modal dialog with a progress bar and a cancel button. I did not find any example of this in the SDK. Is it possible to use any of the functions in the PIProgressSuite.h for this kind of dialog?



    Regards,

    Mattias
    Is it possible to use a progress bar in...
    When the the Progress Suite is acquired from an automation plug-in, only a subset of its routines are available. For instance, TestAbortProc is available, but UpdateProgress is not. I haven't tried the Progress_* routines, so I don't know whether they're available or not. The documentation on the topic is scarce, and there are no relevant examples in the SDK. After searching around for a while, I decided it would be quicker to implement my own (OS-specific) progress bar.



    Nicolas
    Is it possible to use a progress bar in...
    I don't think you will have much luck with the progress suite. It is used for one operation that your plug-in would control. You are probably using multiple Photoshop events and want to sum them up in a progress bar. Ideally you would want a double progress bar, one for the overall progress and one for the step progress. Unfortunately, the progress suite will get reset with each process that Photoshop tries to show progress for. Your best bet is to just use an OS progress bar in your dialog. Figuring out the progress will be dificult.

    Major trouble understanding structure

    Hello,



    This is my first time creating a Photoshop Plugin, and I am having a lot of trouble understanding how to do it. I am using Microsoft MFC to create it. Does anybody know of good references or sample code to look at? I simply don't get how to create this!!!



    I am trying to do a filter plugin that will let the user select a particular color, and turn all other colour in the image to black and white.



    Thanks.
    Major trouble understanding structure
    MFC isn't a very good choice, as it's not portable.



    For portable source code, there are a zillion examples linked from my software page, http://telegraphics.com.au/sw/
    Major trouble understanding structure
    There is one MFC sample in the SDK. It doesn't sound like you are having trouble with MFC per say but more about getting pixels in and out of Photohsop. Where exactly are you having troubles? Maybe the Dissolve sample will help you out but it uses OS (Win32) API's and not MFC.
  • mask making
  • How to save the ''void * inData '' in...

    In a filter plug-in, we want to save the image data ''void * inData '' to a new image file. How to do it?

    Thanks a lot.

    Learning Photoshop CS2 - Books,...

    Hi everyone!



    I would firstly like to apologise if this topic has been covered in depth but i am desperately looking for the right book/s as a Christmas present to ensure that my girlfriend learns Photoshop CS2 with ease. I have some experience in Photoshop and have been doing an IT degree here in New Zealand for the past 4 years but Im not a designer so i really need your guys help!



    I also appreciate that there are so many books out there but have found that some dont go into enough depth or lack the variation in examples to significantly cover what photoshop has to offer. I was initially thinking that a couple of books might be necessary to take her from beginner to advanced.



    Background - She has just finished a degree in Fashion design %26amp; Art with straight As. She has always excelled in arts and photography but has lately found her self-doing graphics based contract work for fashion designers. This has all been in Corel draw 11 and Corel photo paint 11. She has been using Corel products for about 6 years now but by no means considers herself an expert.



    She now realises that shes needs a raster based program such as Photoshop that extends the functionality of Corel photopaint. She has also decided on going back to school to specialise in computer-aided design so she needs to learn Photoshop fast.



    I think she is the person that appreciates step by step instructions by example but would also benefit from software based tutorials.



    I was wondering if you good people would be able to suggest any text books that would cater to her needs.



    I was also wondering if the full 700 dollars + version needs to be purchased as she is charging for the work that she does? I noticed that there were several licenses within the website, which one is appropriate. She is not studying at the moment but will be start again in a few months. Are their licenses that cover students that are selling their work?



    Am I making the right assumption that she needs CS2? Is it that widely supported? Would it be better for her to by another version of Photoshop?



    I would also like to thank you guys for taking the time to read this post and greatly appreciate any response.



    Paul
    Learning Photoshop CS2 - Books,...
    CS 2 is a must if she is working with high fashion photography.

    like images from A canon Eos 1DS mark II

    most digital photographers now adays use RAW obsessivly when they are unsure about the exposure by about a tenth of a stop in the highlights or maybe if they are dealing with more than one type of lighting and are worryed about white balance.



    phase one capture one is a good progam to know if she is working with photographers, actualy the more you know about the photographers capture process the easyer it will be to learn about exactly what progam is best for you. If your not working with raw at all that CS 1 will do nicely

    The order of the ' void *inData ' in...

    We want to get the image data in filter plug-in.

    the code is like this:

    -------------------------------------------

    FILE *fp;

    fp=fopen(''C:\\h.bmp'',''w+r'');

    fseek(fp, 55, SEEK_SET);

    fwrite((unsigned char*)gStuff-%26gt;inData, 1, gStuff-%26gt;bigDocumentData-%26gt; wholeSize32.v * gStuff-%26gt;bigDocumentData-%26gt;wholeSize32.h * gStuff-%26gt;planes, fp);

    fclose(fp);



    -------------------------------------------

    Why the image data saved is disordered?

    Thanks.
    The order of the ' void *inData ' in...
    %26gt;fp=fopen(''C:\\h.bmp'',''w+r'');

    %26gt;Why the image data saved is disordered?



    It's not. But BMP files have different rules and orders for pixel data

    than the Photoshop data. Read the specification for both carefully,

    you will need to convert each pixel and ALSO may need to do special

    processing at the end of each scan line.



    Aandi Inston
    The order of the ' void *inData ' in...
    Thank Aandi Inston.

    Could you tell me how to convert each pixel data to BMP files?

    %26gt;Could you tell me how to convert each pixel data to BMP files?



    It should be obvious once you have studied both specifications. You

    seem to be making assumptions that pixel data is universal, rather

    than specific to each file format.





    Aandi Inston

    Note that some sources on the web incorrectly state that the byte

    order in a 24-bit BMP file is Red, Green, Blue; in fact it is Blue,

    Green, Red. This file seems accurate:

    http://atlc.sourceforge.net/bmp.html



    Aandi Inston

    On the other hand,

    http://www.fortunecity.com/skyscraper/windows/364/bmpffrmt.html

    includes vital information missing in the other reference. This is

    more accessible and the section ''The pixel data'' is vital. However,

    when it says ''The first byte represents the red part, the second the

    green and the third the blue part'', this is simply wrong. Caveat

    emptor.



    Aandi Inston

    http://msdn2.microsoft.com/en-us/library/ms532311.aspx

    Thank Aandi Inston and Toby Thain.

    The problem is solved.

    How to handle the nonscriptable event...

    from the sdk document, the plug in for eventall just suitable for all the scriptalbe actions. Is there any way to handle the nonscriptable event such as drawing a line on the image ?



    Thanks in advance.
    How to handle the nonscriptable event...
    There is no API in the Photoshop SDK to handle non scriptable events.

    How to get image data from hidden...

    For example, we want to preview an image in automation plug-in. The code is like this:

    In Hidden filter project:



    HERROR(sPSActionDescriptor-%26gt;PutData(descriptor,

    keyDatum,

    gFilterRecord-%26gt;planes * nWidth * nHeight,

    gFilterRecord-%26gt;inData));



    ...



    In Automation project:



    unsigned char *lpBits;



    //lpBits = (unsigned char*)malloc(m_nWidth * m_nHeight);



    hasKey = false;

    (void)sPSActionDescriptor-%26gt;HasKey(result.get(), keyDatum, %26amp;hasKey);



    if (hasKey)

    {

    AFERROR(sPSActionDescriptor-%26gt;GetData(result.get(), keyDatum, lpBits));

    }

    ...



    Alert program error!



    Please tell me what to do. Thanks a lot.
    How to get image data from hidden...
    You need malloc the memory in your automation plug-in, give that pointer to your filter plug-in, get the data in your filter and COPY it over to the pointer. Then your code will work. In your current version the memory is no longer there once your filter is unloaded from memory.



    I had this example in earlier versions of the SDK but this way is not ideal. Ideally you want to do all filtering operations in your filter plug-in because you are going to have to do a lot of copy paste of pixel data which is going to be expensive. Try to re-work your plug-in to keep the pixel get/set inside the plug-in.



    See the latest version of the AutomationFilter / Hidden examples in the SDK.
    How to get image data from hidden...
    Thank you very much.

    QR Codes

    Anyone know of a plugin for Photoshop/Illustrator that will generate QR codes?
  • mask making
  • Problem with Photoshop SDK example...

    Hi,



    I would like to write a filter plugin. So I have downloaded the Photoshop CS2 SDK and I have compiled all the example filter plugins from it. Now when I use an additional directory for loading the plugins to the Photoshop CS2. Only 3 of 7 show up. I am using Windows Vista.



    Does somebody know what I am doing wrong?



    Thanks



    Lucie
    Problem with Photoshop SDK example...
    Apart from the obvious, no.



    Vista brings a bunch of new headaches for people using plugins, including ''entry point not found'' and memory bugs which XP/OS X users don't encounter.



    An upgrade to a different operating system is recommended.
    Problem with Photoshop SDK example...
    Thank you for your advice. I tried it on Windows XP and still the same problem. I am giving up. I prefer spending my time writing my own plugin then trying to make it work. :) Lucie

    How to read and write the image data...

    In the filter plug-in, void *inData in the struct FilterRecord is the pointer to the requested input image data. How to read and write it? In another word, how to translate it to unsigned char * data?
    How to read and write the image data...
    Use a cast, or assign to a pointer with your desired type.



    For a large number of examples, see my source code at http://telegraphics.com.au/sw/



    E.g., usage of inData in simple filters such as https://www.telegraphics.com.au/fisheye/browse/12bits/trunk/main.c?r=12#l248



    You will also want to do this if you're accessing 16 bit data (unsigned short).
    How to read and write the image data...
    Thanks for you help.Could you explain it more particular?

    Now my code is like this:

    -------------------------------------------

    FILE *fp;

    fp=fopen(''C:\\h.bmp'',''w+r'');

    fseek(fp, 55, SEEK_SET);

    fwrite((unsigned char*)gStuff-%26gt;inData, 1, gStuff-%26gt;bigDocumentData-%26gt; wholeSize32.v * gStuff-%26gt;bigDocumentData-%26gt;wholeSize32.h * gStuff-%26gt;planes, fp);

    fclose(fp);



    -------------------------------------------

    Why the image data saved is disordered?

    Thanks.

    Creative Suite Developer Summit

    Just in case you haven't heard, we will be running a Creative Suite Developer Summit on April 28 - May 1st in Seattle, Washington.



    Registration details are at: http://www.adobe.com/cfusion/event/index.cfm?event=detail%26amp;id=1208804%26amp;loc=en_us (sorry about the long URL)



    As a Photoshop developer, you'll be interested in the sessions on Photoshop Business Strategy, as well as Photoshop Technical Strategy. Details on these types of sessions are at http://blogs.adobe.com/notesfrommnr . The sessions being offered by Adobe on April 29th %26amp; 30th are free, and also include equivalent sessions for other products in the Creative Suite.



    Also - there is a training class on Flex that you may be interested in. You can download a descriptive PDF at https://share.adobe.com/adc/document.do?docid=bc18ccde-f521-11dc-9115-2d83b2266 5d4



    Questions? Let me know...



    Mark Niemann-Ross

    How to get layer size in filter?

    I want get layer size and position in filter.

    top, bottom, left, and right.

    on automation, I can get those informations by sPSActionControl suite, but I can not access this suite in filter.

    thanks
    How to get layer size in filter?
    In PS,it's easy to get the size of a document through FilterRecord-%26gt;documentInfo,but always we want to get the size%26amp;position of the layer(or maybe a layerset) in a document in order to do something with the layer(such as get RGB channel data and Transparency channel data).So just as what liuhui asked,we haven't found the method in filter,will somebody know and pls show your precious opinion?

    Nice question! Paying attention...
    How to get layer size in filter?
    Is it now possible to have filters as part of the filter record. It appears from this code that you can now do it out side of channeldata and could add dummy layers for use later.



    This really does not match the documentation but I can find any example that really uses the following data:



    int16 inLayerPlanes; /**%26lt; The number of target layer planes for the input data.

    If all the input plane values are zero,

    then the plug-in should assume the host has not set them.







    @note When processing layer data, Photoshop structures

    its input and output data for plug-ins as follows:

    - target layer channels

    - transparency mask for target layer

    - layer mask channels for target layer

    - inverted layer mask channels for target layer

    - non-layer channels



    The output planes are a prefix of the input planes.

    For example, in the protected transparency case, the input

    can contain a transparency mask and a layer mask while the

    output can contain just the layerPlanes.







    When processing non-layer data (including running a filter

    on the layer mask alone), Photoshop structures the data

    as consisting only of non-layer channels. It indicates

    this structure through a series of short counts. The

    transparency count must be either 0 or 1.

    */

    int16 inTransparencyMask; /**%26lt; The number of transparency masks for the input target

    layer data.

    See @ref inLayerPlanes for additional information. */

    int16 inLayerMasks; /**%26lt; The number of layer mask channels for the input

    target layer.

    See @ref inLayerPlanes for additional information.*/

    int16 inInvertedLayerMasks; /**%26lt; The number of inverted layer mask channels for the

    input target layer.



    With the inverted layer masks, 0 = fully visible

    and 255 = completely hidden. See @ref inLayerPlanes for

    additional information.*/

    int16 inNonLayerPlanes; /**%26lt; The number of non-layer channels for the input data.

    See @ref inLayerPlanes for additional information. */



    int16 outLayerPlanes; /**%26lt; The number of target layer planes for the output data.

    See @ref inLayerPlanes for additional information about

    the structure of the output data. */

    int16 outTransparencyMask; /**%26lt; The number of transparency masks for the output data.

    See @ref inLayerPlanes for additional information about

    the structure of the output data. */

    int16 outLayerMasks; /**%26lt; The number of layer mask channels for the output data.

    See @ref inLayerPlanes for additional information about

    the structure of the output data. */

    int16 outInvertedLayerMasks; /**%26lt; The number of inverted layer mask channels for the output data.

    See @ref inLayerPlanes for additional information about

    the structure of the output data. */

    int16 outNonLayerPlanes; /**%26lt; The number of non-layer channels for the output data.

    See @ref inLayerPlanes for additional information about

    the structure of the output data. */



    int16 absLayerPlanes; /**%26lt; The number of target layer planes for the input data,

    used for the structure of the input data when

    \c wantsAbsolute is TRUE.

    See @ref inLayerPlanes for additional information about

    the structure of the input data. */

    int16 absTransparencyMask; /**%26lt; The number of transparency masks for the input data,

    used for the structure of the input data when

    \c wantsAbsolute is TRUE.

    See @ref inLayerPlanes for additional information about

    the structure of the input data. */

    int16 absLayerMasks; /**%26lt; The number of layer mask channels for the input data,

    used for the structure of the input data when

    \c wantsAbsolute is TRUE.

    See @ref inLayerPlanes for additional information about

    the structure of the input data. */

    int16 absInvertedLayerMasks; /**%26lt; The number of inverted layer mask channels for the input

    data, used for the structure of the input data when

    \c wantsAbsolute is TRUE.

    See @ref inLayerPlanes for additional information about

    the structure of the input data. */

    int16 absNonLayerPlanes; /**%26lt; The number of target layer planes for the input data,

    used for the structure of the input data when

    \c wantsAbsolute is TRUE.

    See @ref inLayerPlanes for additional information about

    the structure of the input data. */



    /* We allow for extra planes in the input and the output. These planes

    will be filled with dummyPlaneValue at those times when we build the

    buffers. These features will only be available if supportsDummyPlanes

    is TRUE. */



    int16 inPreDummyPlanes; /**%26lt; The number of extra planes before

    the input data. Only available if

    \c supportsDummyChannels=TRUE. Used for

    things like forcing RGB data to appear as RGBA. */

    int16 inPostDummyPlanes; /**%26lt; The number of extra planes after

    the input data. Only available if

    \c supportsDummyChannels=TRUE. Used for

    things like forcing RGB data to appear as RGBA. */



    int16 outPreDummyPlanes; /**%26lt; The number of extra planes before

    the output data. Only available if

    \c supportsDummyChannels=TRUE. */

    int16 outPostDummyPlanes; /**%26lt; The number of extra planes after

    the output data. Only available if

    \c supportsDummyChannels=TRUE. */

    How to get the path data?

    For example, if the path is a line, we want to know the coordinate of starting point and the ending point. If the path is a rectangle, we want to know the coordinate of four corners.

    Can you tell me how to get the path coordinate that we care?
    How to get the path data?
    by automation.

    see sample code ''getter''
    How to get the path data?
    Look at PIProperties.h and the properties suite. Acquire that suite and get the path information.

    Thank you very much.

    But the code come from ''getter'' could not work, such as:

    ---------------------------------------------------------------

    error = sPSActionControl-%26gt;Play(%26amp;result, runtimeEventID, desc00002668, plugInDialogSilent);

    if (error) goto returnError;

    ----------------------------------------------------------------

    It is error. Could you tell me what to do?

    I could draw paths from the listener.log. But some paths are not shown in it. Such as the curve path. Could you tell me how to draw it?

    I have the same problem, do you have the solution fiona.guo?



    http://www.tldsco.com

    A QUESTION ABOUT sPSActionControl

    The code is like this:

    PSActionControlProcs* sPSActionControlé”›?


    Error = sSPBasic-%26gt;AcquireSuite(kPSActionControlSuite, kPSActionControlSuiteVersion, %26amp;sPSActionControl);



    Question: sPSActionControl is NULL in the filter plug-in but is not NULL in the automation plug-in.



    Now I want use sPSActionControl in filter plug-in code, what would I do?
    A QUESTION ABOUT sPSActionControl
    I have same question.
    A QUESTION ABOUT sPSActionControl
    The control suite is not available to filter plug-in types. You cannot perform automation in a filter plug-in. You will need to combine a filter and an automation plug-in to get the control suite. See the AutomationFilter and Hidden example.
  • mask making
  • Layers Question in PS 5.5

    Hello,



    Hope this is the right forum. Simple question:



    I create a new file with a white background. Next I open a digital color image. I select and move a portion of the digital image onto the first, white layer. I transform the image. I select the image layer and apply a gradient to the image layer and it covers the entire canvas, which I do not want.



    How do I apply filters only to the image layer? I want the original background to act as a frame.



    Thanks.
    Layers Question in PS 5.5
    Lock transparency (small icon next to layer in palette).



    (Note, this is not an SDK-related question. If you had posted in the main Photoshop forum you'd have 99 answers by now :-)
    Layers Question in PS 5.5
    Thanks Toby, this works fine.

    Lightroom SDK beta tester?

    Since Lightroom is part of the PhotoShop family, I figured this the correct place to ask my questions - if not, please redirect me.



    I dont know if Adobe has done it in the past, but I'm interest in being a beta tester for the Lightroom SDK. So, my questions are:



    1)Have they had beta testers for SDKs previously, and

    2)How can I become one for Lightroom?



    Any insight will be appreciated.



    Thanks



    Pete
    Lightroom SDK beta tester?
    http://labs.adobe.com/technologies/lightroomsdk/

    Color space conversions to/from XYZ...

    I have just started writing a plug-in in which I need to convert data from an RGB space to XYZ and back again. For this I am using the sPSColorSpace-%26gt;Convert16 function.



    Unfortunately, it seems that the conversions to and from XYZ are not performed correctly. I do not know exactly what *is* calculated, but XYZ it's not. One of the giveaways is that the result of the conversion depends on the color space of the RGB data, including the gamma. Instead, the XYZ values should be uniquely defined, independent of the source RGB space.



    I have since created a work-around, by using the sPSColorSpace-%26gt;Convert16 function to convert RGB values to Lab, and converting those to XYZ and back again with my own code. In this way, everything works as expected. However, it's unsatisfactory for two reasons: (1) a basic SDK function seems to be broken, and (2) my workaround is very slow, introducing 4(!) redundant nonlinear transforms per pixel.



    Does anyone have similar or contrary experiences? And, assuming I haven't messed up, how should one go about notifying Adobe about this? Thanks in advance!



    Simon
    Color space conversions to/from XYZ...
    %26gt; One of the giveaways is that the result of the conversion depends on the color space of the RGB data, including the gamma.

    %26gt; Instead, the XYZ values should be uniquely defined, independent of the source RGB space.



    No, that isn't the case. What makes you think that RGB -%26gt; XYZ is a

    profile independent conversion? XYZ is a device independent color

    space, not a transformation of RGB (like HSB).



    Aandi Inston
    Color space conversions to/from XYZ...
    %26gt;XYZ is a device independent color space, not a transformation of RGB (like HSB).



    That is exactly what I meant. Sorry for expressing myself poorly.



    The test I did was as follows. I applied my filter as a smart filter to an RGB smart object. I then *converted* (not assigned) the RGB object to another color space using a relative colorimetric conversion. Because my filter operates in the XYZ space, the (visual) output should be unaffected by the color space conversion. Unfortunately, the output changed.



    When I changed my filter to use Convert16 to convert to Lab (instead of XYZ) and back, and manually performed the Lab%26lt;-%26gt;XYZ conversion, the (visual) output was indeed independent of the source color space.



    My conclusion is that XYZ as calculated by the Convert16 function *is* a 'transformation of RGB', but, you are correct, it shouldn't be. The conversion does not properly account for the source RGB space.



    Simon

    Anyone else? Or shall I try to file a bug report?



    Simon

    Bug reports are good but they are completely passive (a way of

    reporting bugs, not a way to get replies or help).



    My next step would be to purchase an ASN case.



    Aandi Inston

    Aandi, thank you for responding. I agree that bug reports are very passive - especially so with Adobe. The existence of a separate developer network probably amplifies this effect.



    However, I am writing a freeware plugin, and I am doing this in my spare time. Plus, I have found a working, albeit slow, workaround. Therefore, I don't think it's worth the hassle or the money to become an ASN member.



    So, a bug report will have to do. I presume the Photoshop team is at least interested in fixing this - maybe when they add 32-bit support to their color space conversion code for CS4...



    Simon

    Today I returned to this problem and did a few more tests. I guess I figured out what is happening.



    It turns out that sPSColorSpace-%26gt;Convert16 and Convert8 throw a 'Parm' (bad parameter) error when asked to convert to or from the XYZ color space (plugIncolorServicesXYZSpace). The result is that the data remains untouched, (obviously) leading to very strange results. Converting to and from other color spaces, including HSB/HSL/Lab, works fine.



    In other words, XYZ color space conversions appear to be unsupported, even though the documentation suggests otherwise. It seems strange to consciously make an exception for XYZ, especially because XYZ conversions are essentially free once Lab conversions are implemented. Could it be a bug?



    Simon

    OK, I recieved a response from Adobe after filing my bug report/feature request. They confirmed that XYZ conversions are currently not supported (by design), and that the SDK documentation is ambiguous in this regard and may be updated.

    Thursday, April 1, 2010

    PSActionControlProcs

    The code is like this:

    PSActionControlProcs* sPSActionControlé”›?


    Error = sSPBasic-%26gt;AcquireSuite(kPSActionControlSuite, kPSActionControlSuiteVersion, %26amp;sPSActionControl);



    Question: sPSActionControl is NULL in the filter plug-in, but it is not in the automation plug-in.



    Now I want to use sPSActionControl in filter plug-in. What could I do?

    resolution of photoshop images in...

    I am creating a video sequence as a backdrop for a theatre production using photoshop, after effects and premiere. The sequence will be put onto dvd and projected onto a 5m x 3m wide-screen. Need to know what minimum resolution is required to achieve sufficient quality of image at this size. How can I calculate the optimum resolution for a 16:9 format of this size?
    resolution of photoshop images in...
    Are you using the Photoshop SDK (a tool for programmers)?



    Aandi Inston

    Multiple image processing plug-in...

    When writing a Photoshop CS3 plug-in can I access all the (in PS) opened images and so create a new one using the information form these images?



    I'm working on a project about creating a .HDR image from 2 or more images. So I'm deciding to use SDK and write adequate plug-in.



    P.S: Sorry the newbie question, I couldn't found any reasonable answers yet.



    Thanks a lot.
    Multiple image processing plug-in...
    You will need an automation plug-in. Look at the Automation folder in the SDK. There are many examples there. You may also need to look at the file format plug-in type.

    Can Photoshop File Format Plug-ins be...

    I have a photoshop file format plug-in and would like InDesign to use it to read the relevant image file type. Is this possible? Thanks,



    Rob

    Custom action batch processing through...

    I have saved some custom actions in Adobe photoshop which I require to do frequently on my image files.

    Now, I want to run these custom action through vb.net or c# where i can specify which action to run and source and destination folders.

    So can someone provide me the code for doing the same. Its very urgent.
  • mask making
  • Create simple dialog window problem on...

    Hi developers!

    I need your help. I can't create dialog window on Mac using ADM. It seems that problem with .r file. This is resource file Example.r:



    resource 'DLOG' (kExamplePanelDialogID, kExamplePanelName, purgeable) {

    {100, 200, 306, 406},

    1991, // floatZoomGrowProc

    visible,

    goAway,

    0x0,

    kExamplePanelDialogID,

    kExamplePanelName,

    0x0 // noAutoCenter

    };



    And this is my ADM call function in the project:



    admDialogRef = sADMDialog-%26gt;Create( message-%26gt;d.self,''My Example'', kExamplePanelDialogID, kADMTabbedFloatingDialogStyle, DlgInit, nil, 0 );



    ASErr ASAPI DlgInit(ADMDialogRef dlg)

    {

    return noErr;

    }



    ...



    sADMDialog-%26gt;Show( admDialogRef, true);

    Changing the Menu Entry Name of a...

    I'd like to change or set (no matter what as long as i got the right string standing there after ps startup) the string of a menu entry for my plugin.



    Has anyone done this yet?



    I'd be glad for any hints.



    Regards,



    Michael
    Changing the Menu Entry Name of a...
    The string in the menu item cannot be changed at run time. It comes from your PiPL property for your plug-in.

    Allocating high amount of memory

    Hi,



    my plug in needs a lot of memory. Round about 100MB or a little bit more.

    The reason for this is that there are a lot of calculation steps and I need to store the results in between for caching and faster processing.



    How do I allocate such amount of memory?

    Are there any tricks or hints?



    I have the problem that I can oben the plugin 3-5 times and then photoshop crashes. (It crashes because the buffer suit allocation function cannot allocate more memory and my plugin do not handle this yet.)

    Means photoshop cannot allocate more memory. It seems it doesn't free unused old memory even when I explicitely free it via buffer suit.



    Any held welcome.



    Regards Thomas
    Allocating high amount of memory
    ThomasTh@adobeforums.com wrote:



    %26gt; I have the problem that I can oben the plugin 3-5 times and then photoshop crashes. (It crashes because the buffer suit allocation function cannot allocate more memory and my plugin do not handle this yet.)

    %26gt; Means photoshop cannot allocate more memory. It seems it doesn't free unused old memory even when I explicitely free it via buffer suit.



    It sounds more like a heap fragmentation problem. It may have 200meg free but

    may not have a contiguous block of 100meg that you requested.



    -X

    --

    for photoshop scripting solutions of all sorts

    contact: xbytor@gmail.com
    Allocating high amount of memory
    %26gt;It sounds more like a heap fragmentation problem.



    So what do you suggest?

    Allocating small blocks?

    My current code does the exact opposite. E.g. all U8-datas (think several layers of U8-data) are combined to one big U8-array to have only one allocation for it.



    (U8 == unsigned char)

    ThomasTh@adobeforums.com wrote:

    %26gt;

    %26gt; It sounds more like a heap fragmentation problem.

    %26gt;

    %26gt; So what do you suggest?

    %26gt; Allocating small blocks?



    If it really is a fragmentation problem, that would be the best solution.



    %26gt; My current code does the exact opposite. E.g. all U8-datas (think several layers of U8-data) are combined to one big U8-array to have only one allocation for it.

    %26gt;



    I thought it might be something like this. It will add some complexity to your

    code but it may be the only way to get the job done.



    -X

    --

    for photoshop scripting solutions of all sorts

    contact: xbytor@gmail.com

    FYI:

    I changed memory handling to more smaller pieces instead of large blocks of memory.

    It seems to work now. But there is an interessiting side effect:

    performance is significantly (axprox factor 2) improved...

    Reading image layers

    Hi guys,



    I am developing an application to read an image format and convert it to my proprietary format. I want to read/get the layer information of the image, each graphic object associated with the image.



    I downloaded CS SDK but unable to identify the component/APIs. Can you please help me in identifying the same.



    Thanks in advance

    Sudharsan
    Reading image layers
    So, you are looking to automate Photoshop from your application, to

    have it do the task? Or you're looking to add on a Photoshop format

    plug-in to have it export to your proprietary format (which sounds a

    better fit for the SDK).



    Aandi Inston
    Reading image layers
    ...or do you want to passively parse PSD?



    You'll need the ''Advanced'' SDK to find out anything about PSD/PSB, but the documentation is rather incomplete. http://telegraphics.com.au/svn/psdparse/trunk is source code for a program to parse it - at least, that part that was documented sufficiently or I could figure out.

    I want to read Bartender (CD labelling image) format and create my own CD label image. Photoshop is able to load the bartender file and also allows to get the layers from it.

    So, I thought I could use photoshop SDK to load the file and get the graphic information from the file and create my own format.



    Any suggestions on this.

    Maybe you can use the Photoshop SDK, but you don't make it clear

    whether you completely understand what the SDK is. It is a set of

    tools for adding on to Photoshop, or automating Photoshop.



    The ''obvious'' way to do this is to add an export module to Photoshop,

    so people can save anything open in Photoshop into your file format.



    What do you mean by ''graphic information'', though - do you just mean

    the raster images of each layer?



    Aandi Inston

    Hi all,

    I am using PSD file documentation to make the psd parser.. I would like to ask inside the Layer and Mask Information section, there is line written on Channel Image Data i.e. ''If the layer's size, and therefore the data, is odd, a pad byte will be inserted at the end of the row''

    What is meant by this line exactly and what i have to do in this case..

    I am reading it in to the buffer..

    I don't have that document, but this is a very common feature of image

    file formats. If so...



    Image data is stored in rows, so the first piece of data is the first

    row (top or bottom), the second piece of data is the second row, and

    so on.



    What this is saying is that each row will start on an even numbered

    byte. So if the rows occupy, say, 224 bytes, they will follow each

    other exactly. But if the rows occupy 225 bytes there is an extra

    byte. Each row uses 226 bytes, but only the first 225 bytes are used.



    Some image formats have padding only to a byte boundary (e.g. PDF

    images), some might have other rules (e.g. BMP pads to a multiple of 4

    bytes).



    Aandi Inston

    %26gt; I am using PSD file documentation to make the psd parser..



    If you want an already written parser, try my http://telegraphics.com.au/sw/#psdparse - Trying to puzzle out all the ambiguities and omissions of the PSD documentation is an unrewarding few hundred hours, good luck.

    hi again,



    Actually i have tried all this by adding a byte in my destination buffer and i have skipped 1 byte in my source buffer but neither of them worked..in getting the image when data is odd(i am getting image when data is even).

    fyi http://www.fileformat.info/format/psd/egff.htm



    I think you have given me a plug in for a psd file. but i need the logic to solve this problem.

    Thanks anyways

    %26gt;Actually i have tried all this by adding a byte in my destination buffer and i have skipped 1 byte in my source buffer but neither of them worked..



    What format are you trying to convert INTO? What are its row alignment

    requirements?



    Aandi Inston

    Hi Aandi,

    While reading the source buffer i am storing bytes into the integer buffer and after reading all the channels in to separate buffers, i am combining all the channel buffers in to single surface(Directx).

    I don't know anything about DirectX, but what are its row padding

    requirements?



    Also, have you tried looking directly at the data returned for the

    layers to see whether it matches your expectation? A small white

    bitmap with a 1-pixel wide left border is a good starting point.



    Aandi Inston

    Hi Aandi,

    I have checked, there is no row padding requirements for the surface in DirectX. and i have tried your method by adding a bitmap of one pixel but the result was same(corrupt image)......I have tried all the possibilities to decode the line(''If the layer's size, and therefore the data, is odd, a pad byte will be inserted at the end of the row'') but always the result was same..

    %26gt; i need the logic to solve this problem.



    The logic is in the source code I linked you to. Good luck, you're beginning to see the value of the documentation.

    HI,



    I need two important information regarding the PSD..



    1.Is it possible to extract the RGB information of each layer using..If so how??



    2.If i draw a simple Circle in adobe photshop and save it as hello.psd.Later while extracting the hello.psd using the psd parser, how will i know that the image is a circle??



    Kindly help me regarding the same..



    Eagrly waiting for your kind anticipation,



    Regards,

    ''Santosh''

    Santosh, my source code answers (1). re: (2) - you don't, in a raster layer. The circle is rendered to pixels by Photoshop.

    Retrieving XMP data for a plug-in

    My plug-in needs to retrieve some of Photoshop's XMP data. In particular I need the data you can find in File %26gt;%26gt; File Info... Camera Data 1. Is there some documentation on how to pass this information to a plug-in?



    Thanks,



    Kevin
    Retrieving XMP data for a plug-in
    bump -- anyone??

    DDE Server Window error when closing CS2

    When closing out of Photoshop and Bridge I get the following error:

    DDE Server Window:photoshop.exe (or bridge.exe)-Application error.



    Then it reads in that window the following: The insturction at ''0x7c9105f8'' referenced memory at ''0x025c0010''. The memory could not be ''read''



    This has occured ever since I downloaded the Adobe upgrade recently.
    DDE Server Window error when closing CS2
    Was this problem ever resolved? Its happening for me now.
  • mask making
  • APP13 IPTC Decoding

    Hi,



    Below is an example of the APP13 part of a JPEG.



    FF ED 00 2E 50 68 6F 74 6F 73 68 6F 70 20 33 2E 30 00 38 42 49 4D 04 04 00 00 00 00 00 12 1C 02 00 00



    So, that is

    FF ED - APP 13 marker

    00 2E - APP 13 length

    50 68.. 42 49 4D - Photoshop 3.0.8.BIM



    My question is... what does 04 04 00 00 00 00 00 represent? I've looked on the net quite a bit and I can't figure that part out, I know what follows it is tag information but and I'm wondering if it relates to that.



    Any help is gratefully appreciated!



    Thanks.

    Need to set the ICC profile AFTER the...

    Hello



    Im working on a Photoshop CS2/CS3 plugin. I need to set the ICC profile when printing. I have code that does this, it works fine when I catch the eventOpen event:



    sPSActionControl-%26gt;AddNotify(this-%26gt;GetPluginRef(), eventOpen, _EventOpen, this);



    Here is the code that I use in my eventOpen handler: (Ive removed all error checking just to make it shorter for this email.)



    error = sPSActionDescriptor-%26gt;Make(%26amp;desc0xe0);

    error = sPSActionReference-%26gt;Make(%26amp;ref0x30);



    error = sPSActionControl-%26gt;StringIDToTypeID(''printOptions'', %26amp;runtimePropID);

    error = sPSActionReference-%26gt;PutProperty(ref0x30, classProperty, runtimePropID);

    error = sPSActionReference-%26gt;PutEnumerated(ref0x30, classDocument, typeOrdinal, enumTarget);

    error = sPSActionDescriptor-%26gt;PutReference(desc0xe0, keyNull, ref0x30);



    error = sPSActionDescriptor-%26gt;Make(%26amp;desc0xe8);

    error = sPSActionDescriptor-%26gt;Make(%26amp;desc0xf0);

    error = sPSActionDescriptor-%26gt;PutObject(desc0xe8, keyPageSetup, classPageSetup, desc0xf0);

    error = sPSActionDescriptor-%26gt;Make(%26amp;desc0xf8);

    spaceID = enumCMYKColor;

    error = sPSActionDescriptor-%26gt;PutEnumerated(desc0xf8, keyColorSpace, typeColorSpace, spaceID);

    error = sPSActionDescriptor-%26gt;PutString(desc0xf8, keyName, _printProfile);

    error = sPSActionDescriptor-%26gt;PutEnumerated(desc0xf8, keyIntent, typeIntent, enumImage);

    error = sPSActionDescriptor-%26gt;PutBoolean(desc0xf8, keyMapBlack, true);

    error = sPSActionDescriptor-%26gt;PutObject(desc0xe8, keyPrintSettings, 'PMps', desc0xf8);



    error = sPSActionControl-%26gt;StringIDToTypeID(''printOptions'', %26amp;runtimeObjID);

    error = sPSActionDescriptor-%26gt;PutObject(desc0xe0, keyTo, runtimeObjID, desc0xe8);



    error = sPSActionControl-%26gt;Play(%26amp;result, eventSet, desc0xe0, plugInDialogDontDisplay);



    There are two problems with my code, one of which is pretty serious. When I print and change the printer profile from the Print dialog, the profile selected in the dialog is used, not the one that I select in code. (Lets not debate if this is a good idea or not...).



    So I also catch eventPrint:



    sPSActionControl-%26gt;AddNotify(this-%26gt;GetPluginRef(), eventPrint, _EventPrint, this);



    And I call the exact same code in my eventPrint handler. The problem is that the ICC profile I specified in the plugin isnt being used. Instead, the ICC profile specified in the dialog is being used. Im guessing that my code is run and THEN the dialog is scraped for data. This is clearly a show stopper for the desired behavior.



    The other problem is an odd one. When my code is run the resolution of the image is set to 72 dpi. I guess I can read the resolution and set it in this code to the original resolution but that seems odd, Id rather prevent it from being set in the first place.



    Thanks for looking at this and for any advice you can give.



    Paul

    Add Parent Menu to Photoshop

    Hello, I have seen this done a few times (see http://img299.imageshack.us/my.php?image=abvs5.jpg ) where a plugin will add a parent menu to Photoshop. I see they are always using an Automation plugin, i assume to get an entry point when PS loads. But are they doing it through the SDK somehow or are they just hacking it using the win32 GUI API?
    Add Parent Menu to Photoshop
    They are 'hacking' with OS calls. There is no Photoshop API to insert in the top level menus and this is unsupported by Adobe.

    How to make plugin resident on Mac OS?

    Does anyone have a way to do this? It has to work for both automate and filter plugins.



    I've tried the following:



    1. Persistent property in PiPl. This works for automate plugins in CS3, but not CS2. It doesn't seem to work for filter plugins.



    2. Call SPAccess AcquirePlugin() on own plugin ref. This is documented to work but always returns !Acq. This is weird because GetPluginAccess() works fine (but doesn't bump the reference count.)



    3. Use SPPlugins to hunt through list returned by GetRuntimePluginList() so I can have one of my plugins find the other and load it and vice versa. My plugins are not in this list. In fact it's almost empty.



    4. Try using CFBundle functions to keep the executable loaded. Doesn't work.

    Photoshop Format Plugin - Cannot keep...

    Hi Guys,

    I am trying out the SME (Simple Format) example and whenever I save it out to an index file format and load it again, the file format is open as a RGB/8 file.



    I save the LUT correctly. When loading the file, it is loaded with the following settings by default:



    imageMode = plugInModeIndexedColor

    LUT = Set to the colour values specified

    depth = 8

    planes = 1



    Does anyone have any idea why the index colour mode flag doesn't force the file into a index colour image and why it is being set to an RGB image on loading.



    Thank you in advance,

    Peter
    Photoshop Format Plugin - Cannot keep...
    Hi guys,

    I figured out what was going on here. You need to load/set the imageMode in the Start Read function, otherwise it assumes a multi plane image if you just set it in the Continue Read function.



    Cheers,

    Peter

    Help! ''Memory could not be...

    I have developed a plugin for Photoshop using visual c++6.0. When I test the plugin on my laptop, it works perfectly well. However, when I test it on my desktop, it usually causes an error called

    ''...instruction at...referenced memory... The memory could not be read/written''.



    The codes are exactly the same. I have noted that one difference between my laptop and desktop is that my laptop is using FAT32 system and desktop is using NTFS. I don't know whether it is due to file system.



    In the code itself, I have used AfxBeginThread to start two worker threads. I have tried to put the method call that causes the error to the main thread and it works fine. But when I put the method calls in the worker thread, the error always comes out. Seems like the worker thread does not have enough privilege to access??? I am not sure.

    Could anyone help me??
    Help! ''Memory could not be...
    I would expect that this cannot work: you must surely call all

    Photoshop APIs from the master thread.



    Aandi Inston
  • mask making
  • where is layer locking stored in psd?

    i'm referring to to transparent pixel lock, image pixel lock and position lock. file formats pdf mentions the transparency protected flag at bit 0 in the layer records section - which sounds suspiciously similar, but none of the other locks are to be found.

    CS3 3d animation capabilities

    I know nothing about 3d animation. But with the new 3d capabilities of cs3 in photoshop, i know you can open a 3d object and you can manipulate the texturs and you can move and manipulate it spacially. But can you set keyframes to the object and actually animate them in photoshop and export them as an animation file or a video file even or something. I know cs3 has merged photoshop with the image ready animation capabilities, is there a way to use the same animation tools to animate a 3d object?
    CS3 3d animation capabilities
    I would ask this question on the main photoshop forum. You are on the Photoshop Developers (SDK) forum.

    CS3 Debugging from VC2005 help

    Hi all, I'm having trouble debugging a clone of the Getter example plugin. The plugin compiles and works fine but I'm setting this up for future bugs. When I try the ''Attach to Process...'' feature of VC everything seems to work fine, I choose Photoshop.exe and it goes through the DLLs looking for things to load. By the way it says: ''No symbols loaded.'' for every entry and then says:''The thread 'Win32 Thread' (0x1170) has exited with code 0 (0x0).''.



    My issue is that any break points I set are grayed out with an alert message: ''The breakpoint will not currently be hit. No symbols have been loaded for this document.''. The same thing happens if I try to debug by loading Photoshop from VC. Do I have to copy something somewhere for this to work? I have a batch file that I manually copy the plugin into photoshops plugins folder. I also have a bunch of other DLLs that need to go with the plugin.



    Any help on this and debugging in general would be great!



    TNK!



    G
    CS3 Debugging from VC2005 help
    All good now. I think it was that my pdb was still called getter.pdb not the name of my plugin.

    Install Problem CS2

    Hi,



    Just intalleed CS2 on Sony Vaio laptop. Occaisionally starts right up occaisionally doesn't. It gets as far as ''installing AGM'' in Adobe set-up window and freezes. Any thoughts would be appreciated.



    Thanks,

    Jerry

    CS3 windows version how can I run it on...

    I want to upgrade my PC and I am thinking of getting an iMAC with 24'' monitor but no one can tell me if I will be able to use my windows version of CS3. I have Lightroom and that seems to run in both platforms.
    CS3 windows version how can I run it on...
    (This question is not about the Photoshop SDK, which is a tool for

    programmers. I will answer anyway, but please post future questions in

    a more relevant forum, thanks! ...)



    You certainly can't install Windows software directly on a Mac. If you

    have Lightroom which runs on either platform its because you have

    installers for both Mac and Windows software, which is not what you

    get for all programs on the CS3 disks. With rare exceptions you would

    need to buy ALL your software again, unless the vendor offers both

    versions on one disk, or a way of upgrading between PC and Mac.



    However, if the Mac is running Leopard, you can buy and install

    Windows XP (full retail version, using a disk which came with a PC is

    NOT allowed) and then boot up Windows in place of Mac OS X. Then you

    can run CS3 for Windows, and any other of the Windows software you

    don't want to buy.



    I wouldn't personally recommend buying Vista instead.



    Aandi Inston
    CS3 windows version how can I run it on...
    You can also run
    Parallels which would give you access to Windows applications from within OS X.

    %26gt;You can also run Parallels



    Good point, thanks. The same applies: full retail Windows XP is still

    needed.



    Aandi Inston

    Help!!~~How to get fore/backgournd...

    I want to script to retrieve color information (R,G,B/H,S,B ) from current photoshop application class. I tried to retrieve a descriptor representing background color but failed to get color values out of it. Anybody could give me a hint? Thanks~
  • mask making
  • Xcode 2.5 & SysError 0

    I updated to Xcode 2.5 and now the sample code plug-ins do not build. I get the following error when I try to build Dissolve:

    Message:

    SysError 0 during open of ''PIDefines.h''

    Location:

    Dissolve.r 11

    this is the include statement #include ''PIDefines.h''

    The file opens fine in the project. I gather this is a known error. I saw a posting on an InDesign Forum about the same problems and several posting from a couple of years ago when a version of Xcode had the problem. I cannot find any posted solutions though.

    Can anyone tell me what I need to do to cure this problem.

    Thanks.

    Where can I get CS2 Advanced SDK (with...

    I was told I needed the advanced version of the SDK to do format plug-ins and had to register for access to it. I can't see any mention of the advanced version though, and I tried registering the same way I did for the regular SDK and specified that I needed the advanced version with format plugin stuff. It's been several weeks and I haven't heard anything. Can anyone tell me how to get it?
    Where can I get CS2 Advanced SDK (with...
    The background checks, security clearances and so on may take a few weeks. In my case, it took something like six months, not counting the begging and pleading... Can you imagine if Iran gained the capability to write File Format plugins... can't be too careful to whom you grant access!



    They wouldn't want to make it too easy for you to extend their platform - where would the challenge be then!

    Is this possible? Looking for SDK...

    Hi All,



    I'm looking for any input regarding the Photoshop SDK and/or scripting possibilities for an issue I have. We have several thousand PSDs that need to be processed as follows and we're hoping we can automate the task.



    Each PSD contains 2 layers, named 'A' and 'B', and a guide. We need to:

    1. Resize the image (each image will share the same dimensions).

    2. Export layer A as a PNG

    3. Export layer B as a PNG

    4. Get the pixel coordinates of each of the guide corners. Basically, we need the margins that contain the area within the guide.



    Ideally, I think the best solution would be a command-line driven program that takes a PSD file name and width %26amp; height values as arguments, processes the file and returns the coordinate values.



    I have looked thru the scripting docs and don't think it'll do what I want, and I don't yet have access to the SDK docs so I don't know what's possible there.



    Does any of that sound doable and/or does anybody have any ideas? Any help appreciated.
    Is this possible? Looking for SDK...
    Scripting would work for all but #4. I don't think you can get the info about the guides from the scripting or automation interface. If you are on windows you can use VBScript to drive Photoshop and not even have it display. You can do the same on mac with AppleScript but Photoshop would be visible to the user as it processes the images. You could use the SDK and write an automation plug-in but the scriptinging interface has what you need and would be an easier language to use. IMHO.
    Is this possible? Looking for SDK...
    I have written a program which exports layers as PNGs, and can also generate text/XML summaries of PSD contents. It should be easily adaptable to this task:
    psdparse (
    source in Subversion). It's portable to any UNIX or even Windows.

    opps, Sorry...

    Layer Comps UI & Code

    I'm new to Photoshop SDK and would like to know if something is possible. I would like to write a plugin (either C++ or java script) that behaved similar to the Layer Comps window. If this is possible, what type of plugin would that be? Is any of the source code for this window public? I would really appreciated any advice anyone could give me.



    Thanks,

    Michael Starich

    Blizzard Entertainment
    Layer Comps UI %26 Code
    You can't make a panel from a plug-in.

    Photomerge algorithm

    Hello,



    I am trying to stitch together 16-bit grayscale images (1000x1000) that are taken under 40X microscope. I can photomerge 10X images without a problem, but I can't photomerge 40X images. Does anyone know what I need to optimize during image acquisition to enable the photomerge feature? I am wondering how the photomerge algorithm is written - based on contrast? Similar pixels? Please help! Thanks!
    Photomerge algorithm
    Which version of Photoshop are you using? CS2 vs. CS3 is a huge difference.



    Photomerge (CS3) works by identifying ''features'' in each of the images, and then matching up. The algorithm is called SIFT (Scale Invarient Feature Transform). For details, see:



    http://en.wikipedia.org/wiki/Scale-invariant_feature_transform



    It's hard to tell without seeing the images in question, but it could be the higher magnification images don't produce the kind of locally distinct features the algorithm needs to get traction on. Increasing the overlap and/or the contrast (e.g., via histogram equalization or similar techniques) may help.
    Photomerge algorithm
    Thank you for your reply.



    I am using CS3. The funny thing is that I tried Photomerge after processing images with ''Auto Contrast'' as well as about 95% overlap, and the images still could not merge. I will take a look at SIFT. Thanks!

    Hello,

    I am new to this forum... I don't know how to create new topic...



    Anyway, We have currently have a license for Adobe Photoshop CS2 and the main feature we are using there is the PHOTOMERGE Command.



    We like to manually arrange the pictures during photomerge (as in CS2)... But in photoshop CS3, I can not find the way to Disable the ''Attempt to align selceted layers based on content''.



    Does anyone know how to do this in Photoshop CS3?



    Thanks.

    From R.Vinoya

    %26gt;I am new to this forum...



    I think you may also have the wrong forum. Are you using the Photoshop

    SDK (this is a tool for programmers to write plug-ins and automation

    for Photoshop)?



    Aandi Inston

    Adobe CS3 comonents installation failed

    Help I am trying to load CS3 onto a HP Media Centre PC with Vista and ever time I try to load it the message comes up. Summary Shared components successful then 2 errors. Adobe CS3 components install failed and shared components failed. What am I doing wrong ?
    Adobe CS3 comonents installation failed
    I would try a tech support call or the main photoshop user to user forum. You are on the SDK forum.
    Adobe CS3 comonents installation failed
    Found this, might help, have the same problem, working it, sorry for the reply to old post



    http://fredlet.wordpress.com/2008/01/01/installing-adobe-cs3-upgrade/

    If you have the same problem, I recommend you try the regular

    Photoshop forum if you are still stuck, not the SDK forum. Good luck,



    Aandi Inston
  • mask making
  • How to reload image

    I have format plug in and i need to reload image after saving it. How can i do it?
    How to reload image
    You could have an automation plug-in listening for your save and then close and reopen the file. You cannot open a file during a save operation directly from a file format plug-in.

    I have a blurry image.

    Hi everybody, im really new to all this...

    i have a really good photo of my girlfriend, but the problem is it is slighty blurry. can anybody suggest anything that might help me out, or post any relevant websites. thank you
    I have a blurry image.
    As always, Photoshop is not for fixing problems. Better to make it right in the camera the first time. OK, I'll get off my professional photographer soap box.



    You can use the unsharp mask in Pshop versions 5.0 and up and it may help. Filter/Sharpen/Unsharp Mask. Be conservative with the settings to avoid distortion.
    I have a blurry image.
    what size are you planning on printing it? how large is the native file?

    if the file is large enough you take take its resolution and divide each part by 366 for its prints sitze in inches If you are displaying it on the monitor and plan to keep it on the monitor a dpi or ppi of 72 is all you need. to make an image that is SLIGHTLY blurry one thing to do is boost the conrast and half the size of the image while still keeping the dip or ppi the same. keep note that anytime you up conrast you will be adjusting the saturation as well so you may want to reduce the saturation by 10-15%

    Creating halftone patterns with shapes...

    Does anyone know of a way to create your own custom halftone pattern in Photoshop?



    e.g. When converting to a bitmap you get the option of dot/line etc but you can't choose any custom shapes (I want to use an asterisk). You can use a pattern but it doesn't produce the same effect.



    Does anyone know of a way to do this or have any links to tutorials?