Click here to Skip to main content
Sign Up to vote bad
good
Hi all,
 
I am looking for a free portable library to read images files in the most common formats from a C++ program: Bmp, Png, Tiff and Jpeg are a must.
 
The library must be usable under Windows / Visual C++ as well as Linux Ubuntu / gcc (Eclipse). Can be precompiled or source code.
 
I need a proven solution that works under these environments.
 
I know that there is ImageMagick. I am busy trying FreeImage (but facing a few issues). There are plenty of other solutions that I have no time to try individually. Nor do I want to integrate the individual packages that are provided for these formats.
 
Can you advise me of something you have used personally and that meets my requirements ?
 
Thanks a lot
Posted 16-Nov-12 3:19am


4 solutions

ImageMagick would do the trick, have a look at:
ImageMagick: Convert, Edit, Or Compose Bitmap Images[^] and Magick++ C++ API[^] - it's a great package.
 
Best regards
Espen Harlinn
  Permalink  
Comments
YvesDaoust - 16-Nov-12 9:43am
Thanks. Will it integrate seamlessly ? I think it is overfeatured compared to my needs.
Espen Harlinn - 16-Nov-12 9:45am
It's pretty easy to use, if that's what you mean ...
YvesDaoust - 16-Nov-12 10:44am
yes, I mean no compilation issues, no need to fetch extra headers files, adjust linker settings, read endless manual...
Espen Harlinn - 17-Nov-12 5:55am
This is usually a no-hassle operation :-D Have a look at: http://www.imagemagick.org/script/binary-releases.php
Sergey Alexandrovich Kryukov - 19-Nov-12 18:35pm
Using this API is a good idea, a 5. --SA
Espen Harlinn - 19-Nov-12 18:35pm
Thank you, Sergey :-D
  Permalink  
In the end, I have used FreeImage and made it run under Windows and Linux Ubuntu, both 32 and 64 bits. For some reason, I couldn't compile the source code under Linux and had to rely on the self-building package. Anyway, FreeImage gave me all the services I expected. Two to three days of work in total for integration and mastership.
 
Since then, I have also integrated genuine packages for Jpeg and Png in another application (IJG JPEG-9a and Lib Png-1.6.2). I have not used them to full power (this takes a lifetime), but the sources compiled seamlessly under Windows and Linux. You need to find good sample programs to assemble a running solution.
  Permalink  
I dont know about ImageMagick but I am using GDI+ for windows. I dont think so it works for Linux. And FreeImage is good library which work in both windows and Linux.
  Permalink  
Comments
YvesDaoust - 21-Nov-12 2:24am
I tried FreeImage and it didn't compile under Windows unless I fixed the code. Then I tried a test program and it didn't link because of a missing function. Though I was trying the Windows-ready package for Visual Studio. How can I trust a package in such conditions ?
rswapna28 - 22-Nov-12 1:12am
I used FreeImage library for loading images. It worked fine for me. I don't know why it didn't compile for you. If you have trouble in using FreeImage, just try looking this example. you might get some help from it. http://www.codesampler.com/usersrc/usersrc_6.htm (Texture loading with FreeImage - OpenGL/C++) Download this example and check.
YvesDaoust - 22-Nov-12 6:46am
I confirm that using FreeImage is not a seamless experience. One of the failures of the test program is a source file not included in the project ! You wonder if the package was tested before release. Another is a runtime error message you get when trying the same test program and using the test images: "*** TIFF Format Error while opening TIFF: data is invalid ***" Yet another, more annoying issue is the assertion error at run-time when running under Linux: Assertion `sizeof(uint64)==8' failed. I guess I'll find my way through, but this is exactly the kind of time-wasters I wanted to avoid...

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Your Filters
Interested
Ignored
     
0 Christian Graus 544
1 Ron Beyer 296
2 OriginalGriff 258
3 samadhan_kshirsagar 229
4 Sergey Alexandrovich Kryukov 183
0 Sergey Alexandrovich Kryukov 7,007
1 Prasad_Kulkarni 3,815
2 OriginalGriff 3,557
3 _Amy 3,372
4 CPallini 2,975


Advertise | Privacy | Mobile
Web03 | 2.6.130617.1 | Last Updated 4 Jun 2013
Copyright © CodeProject, 1999-2013
All Rights Reserved. Terms of Use
Layout: fixed | fluid