GNOME Bugzilla – Bug 120757
Improve loading of Paint Shop Pro (.psp) files.
Last modified: 2018-05-24 10:53:54 UTC
Currently the psp plug-in doesn't load more recent PSP files. From a comment in the psp code: /* I only have the documentation for file format version 3.0, * but PSP 6 writes version 4.0. Let's hope it's backwards compatible. * Earlier versions probably don't have all the fields I expect * so don't accept those. */ However, full documentation is on-line: http://www.jasc.com/specs/psp.asp
Well, anybody is free to download those specs then and implement the missing features...
As if that wasn't enough, now they are up to version 8, and again, a newer format (PSP file version 6) which will not load in Gimp. They also have special formats for their .PspTubes, .PspBrush, .pfr (picture frames), etc. which I don't know if it's based on the PSP format itself or not. They now support deformation maps, which is another entirely new format from Jasc. Their file format specifications can be found here: http://www.jasc.com/specs/psp.asp
Spec is now to be found at: http://www.jasc.com/support/kb/articles/pspspec.asp Is it ok if I attach it do this report before someone decides to remove the spec from psp site?
That'd probably be a good idea.
Created attachment 27003 [details] Paintshop Pro 8 file spec Paint Shop Pro 8 file format specification. Zipped Word '97
It would be very helpful to have links to a few sample files in file format 6.0 (the current one; Paint Shop Pro 8 uses file format 6).
Some sample files, basically I installed Paint shop pro and grabbed the files that are shipped with it. Please keep your own copies of these files, i will probably have to remove them within the next few weeks because they take up a lot of space. the directory 'myfiles' contains some of the images I was playing around, some screenshots, and some settings files (python scripts). they might be more useful because i have an original jpeg/png image and then the same image in PSP format with various differnt small modifcations. http://www.netsoc.tcd.ie/~horkana/dev/jasc/paintshoppro/files/Paint%20Shop%20Pro%208/ (thanks TML for providing support for PSP files!)
Alan: thanks. I have a local copy of your files now.
*** Bug 167012 has been marked as a duplicate of this bug. ***
paint shop pro uses lots more file extensions than just .psp but I've added it to the summary to make this report easier to search for.
*** Bug 329396 has been marked as a duplicate of this bug. ***
I've taken down the files I posted before at http://www.netsoc.tcd.ie/~horkana/dev/jasc/paintshoppro/files/Paint%20Shop%20Pro%208/ If anyone wants to grap a copy of Paint shop pro (maybe run it on Wine) it might be convient to know about the following link to the Jasc FTP site so you can grab some of the older version (like version 8) and sample files without having to waste time registering: http://ftp.jasc.com/pub/ _Corel_ Paint shop pro is now up to at least version 10. Dell includes a trial version with their computers so there is still a good audience for this. Could maybe encourage a few Dell users to switch when the 60 day trial runs out ;)
I have downloaded all the specs from both the JASC and Corel websites and have started playing with changing the psp.c file. So far I have had some success, but there are still things to be worked out. I haven't checked through all the specs to determine what has changed in them all, but I can load a PSP 11 file into GIMP (Didn't work perfectly with the layers, but I am now confident enough to say I am working on it). Has anyone else worked on this? (I haven't seen anyone else working on this by either google search, or bugzilla) Is there going to be something really big to hit that I haven't seen yet? :)
If someone is working on this, he has decided to not go public yet. So if you do follow a "release early, release often" strategy, you'll have good chances to become the PSP plug-in maintainer. There have been no discussions about any technical obstacles in the past. You should be pretty sure that there aren't any legal issues with using the documents. The fact that you could download them can imply that there aren't, but this should be checked nevertheless.
Created attachment 109511 [details] [review] gimp-2.4.5-psp-update.patch I recently started looking into that since I got some PSP-images which I need to open. I added the definitions from the documents (starting with looking at PSP4 vs PSP5 then PSP5 vs PSP6 etc.). The typedefs should be pretty much complete. I will look at the rest hopefully soon. It would be good if someone would review the patch since I'm not a C developer.
I can review your patch. But we would very much appreciate if you could base patches on SVN trunk or the latest release from the 2.5 series. I think there shouldn't be any problem to merge the patch to trunk. But if you base your work on the development version, that would certainly help to avoid such problems.
Created attachment 109551 [details] [review] updated patch against SVN trunk The patch applied cleanly against trunk. However in order to make it easier to review it, I have untabified the psp.c file and commited the untabified version to trunk. The attached patch is your patch updated against the state in trunk. I have also changed the names of the PspBlendMode enum value. I don't have enough time right now for further review, but I will get to it as soon as possible...
Thanks Sven for porting the patch to SVN trunk. I'll continue my work based on that. I have one question though: You renamed the PspBlendMode enum values from LAYER_* to PSP_*, but the official documentation is using LAYER_*. Shouldn't we stick to the official names so we are consistent when talking to the official developers?
The namespace used in the plug-in should be PSP. If you prefer values to be more closely with the docs, we can change them to PSP_LAYER_*.
I have now committed the patch as attached. If you want to revert the change to the enum values, just let me now or include that change in your next patch. 2008-04-21 Sven Neumann <sven@gimp.org> * plug-ins/common/psp.c: applied patch from Christoph Brill which adds enum values and typedefs used in newer versions of the PSP file format (see bug #120757).
-- GitLab Migration Automatic Message -- This bug has been migrated to GNOME's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/gimp/issues/49.