Current master:
Last build:
DEPRECATED. This repository is not maintained, it is an old mirror of the inactive FreeImage project
License: Other
FIBITMAP* imagen = FreeImage_Load(FIF_JPEG, "Cameron_Diaz_orig.jpg");
FreeImage_Save(FIF_JPEG, imagen, "Cameron_Diaz_test_orig.jpg");
Cameron_Diaz_orig.jpg - size : 233.9 kb
after save
Cameron_Diaz_test_orig.jpg - size : 145.9 kb
if I am using flag 'JPEG_QUALITYSUPERB'
FIBITMAP* imagen = FreeImage_Load(FIF_JPEG, "Cameron_Diaz_orig.jpg");
after save
FreeImage_Save(FIF_JPEG, imagen, "Cameron_Diaz_test_orig.jpg", JPEG_QUALITYSUPERB);
Cameron_Diaz_test_orig.jpg - size : 570.4 kb
How can I use load/save lossless?
I am trying to get FreeImage to work with the multipage API calls, but I have not been able to create a multipage TIFF file, where each page is a different compression. For example, the first page may be LZW, the next page might be Group4 fax compression, etc. I have had no luck so far.
I have only been able to successfully create a multipage TIFF file, but the entire file uses one compression type. I have tried a combination of FreeImage_OpenMultiBitmap, FreeImage_AppendPage, FreeImage_SaveMultiBitmapToHandle, etc.. However as stated before, I can't produce a multipage TIFF file that has differing compression schemes used for each page.
The "flags" parameter denoting the compression to use either is placed on FreeImage_OpenMultiBitmap and Free_CloseMultiBitmap, but no such flags parameter exists for FreeImage_AppendPage (which would have been ideal).
Before anyone suggests doing this -- what I don't want to do is create "mini" TIFF files on disk, and stitch them together to make one file. There should be no need to involve the file system in doing this, since LibTiff has the ability to change compression on the fly, in memory, for each page that is produced.
So if you have a small sample program that shows how to create, say a 2 page TIFF file, where the first page uses no compression, and the second page uses LZW (or something else), I would appreciate it.
Is this still being maintained? If so, can you please update the files to the latest version?
This project does not compile out of box because it fails to find the library headers.
The readme states that freeimage will use its own version but looking around at the it doesn't seem obvious as to where these libraries. Accidentally I saw you had forked these libraries here on github.
Perhaps git modules would make this easier or at least a git clone script in the root.
C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(1697,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "nunit.framework". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [C:\projects\freeimage\Wrapper\FreeImage.NET\cs\UnitTest\UnitTest.csproj]
Hi,
I read through http://sourceforge.net/p/freeimage/discussion/36111/thread/f2fae857/ and completely agree with you. What is the current status of this fork? E.g. it currently lags behind. And what about adding new features here? If you do that, you might reach a point where you cannot merge the "official" FI commits in.
I am doing OPENCL project which uses freeimage library. I can utilize the freeimage.h include to build however for linking, it needs linux version of dynamic link library conforming to the name i.e. libfreeimage.so. Is it available?
or is it possible to build from source?
When I try to build with a local (in repo) copy of LibPNG, I the error /usr/bin/ld: cannot find -llibpng
Output From make VERBOSE=1
[ 67%] Linking CXX shared library ../../../lib/libFreeImage.so
cd /home/emersont1/OgreDeps/build/thirdparty/freeimage/Source && /usr/bin/cmake -E cmake_link_script CMakeFiles/FreeImage.dir/link.txt --verbose=1
/usr/bin/c++ -fPIC -shared -Wl,-soname,libFreeImage.so -o ../../../lib/libFreeImage.so CMakeFiles/FreeImage.dir/DeprecationManager/Deprecated.cpp.o CMakeFiles/FreeImage.dir/DeprecationManager/DeprecationMgr.cpp.o CMakeFiles/FreeImage.dir/FreeImage/BitmapAccess.cpp.o CMakeFiles/FreeImage.dir/FreeImage/CacheFile.cpp.o CMakeFiles/FreeImage.dir/FreeImage/ColorLookup.cpp.o CMakeFiles/FreeImage.dir/FreeImage/Conversion.cpp.o CMakeFiles/FreeImage.dir/FreeImage/Conversion16_555.cpp.o CMakeFiles/FreeImage.dir/FreeImage/Conversion16_565.cpp.o CMakeFiles/FreeImage.dir/FreeImage/Conversion24.cpp.o CMakeFiles/FreeImage.dir/FreeImage/Conversion32.cpp.o CMakeFiles/FreeImage.dir/FreeImage/Conversion4.cpp.o CMakeFiles/FreeImage.dir/FreeImage/Conversion8.cpp.o CMakeFiles/FreeImage.dir/FreeImage/ConversionFloat.cpp.o CMakeFiles/FreeImage.dir/FreeImage/ConversionRGBAF.cpp.o CMakeFiles/FreeImage.dir/FreeImage/ConversionRGBA16.cpp.o CMakeFiles/FreeImage.dir/FreeImage/ConversionRGBF.cpp.o CMakeFiles/FreeImage.dir/FreeImage/ConversionRGB16.cpp.o CMakeFiles/FreeImage.dir/FreeImage/ConversionType.cpp.o CMakeFiles/FreeImage.dir/FreeImage/ConversionUINT16.cpp.o CMakeFiles/FreeImage.dir/FreeImage/FreeImage.cpp.o CMakeFiles/FreeImage.dir/FreeImage/FreeImageIO.cpp.o CMakeFiles/FreeImage.dir/FreeImage/GetType.cpp.o CMakeFiles/FreeImage.dir/FreeImage/Halftoning.cpp.o CMakeFiles/FreeImage.dir/FreeImage/LFPQuantizer.cpp.o CMakeFiles/FreeImage.dir/FreeImage/MemoryIO.cpp.o CMakeFiles/FreeImage.dir/FreeImage/MultiPage.cpp.o CMakeFiles/FreeImage.dir/FreeImage/NNQuantizer.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PixelAccess.cpp.o CMakeFiles/FreeImage.dir/FreeImage/Plugin.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginBMP.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginCUT.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginDDS.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginGIF.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginHDR.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginICO.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginIFF.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginKOALA.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginPCD.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginPCX.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginPFM.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginPICT.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginPNM.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginPSD.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginRAS.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginSGI.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginTARGA.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginWBMP.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginXBM.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginXPM.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PSDParser.cpp.o CMakeFiles/FreeImage.dir/FreeImage/TIFFLogLuv.cpp.o CMakeFiles/FreeImage.dir/FreeImage/tmoColorConvert.cpp.o CMakeFiles/FreeImage.dir/FreeImage/tmoDrago03.cpp.o CMakeFiles/FreeImage.dir/FreeImage/tmoFattal02.cpp.o CMakeFiles/FreeImage.dir/FreeImage/tmoReinhard05.cpp.o CMakeFiles/FreeImage.dir/FreeImage/ToneMapping.cpp.o CMakeFiles/FreeImage.dir/FreeImage/WuQuantizer.cpp.o CMakeFiles/FreeImage.dir/FreeImageToolkit/Background.cpp.o CMakeFiles/FreeImage.dir/FreeImageToolkit/BSplineRotate.cpp.o CMakeFiles/FreeImage.dir/FreeImageToolkit/Channels.cpp.o CMakeFiles/FreeImage.dir/FreeImageToolkit/ClassicRotate.cpp.o CMakeFiles/FreeImage.dir/FreeImageToolkit/Colors.cpp.o CMakeFiles/FreeImage.dir/FreeImageToolkit/CopyPaste.cpp.o CMakeFiles/FreeImage.dir/FreeImageToolkit/Display.cpp.o CMakeFiles/FreeImage.dir/FreeImageToolkit/Flip.cpp.o CMakeFiles/FreeImage.dir/FreeImageToolkit/MultigridPoissonSolver.cpp.o CMakeFiles/FreeImage.dir/FreeImageToolkit/Rescale.cpp.o CMakeFiles/FreeImage.dir/FreeImageToolkit/Resize.cpp.o CMakeFiles/FreeImage.dir/Metadata/Exif.cpp.o CMakeFiles/FreeImage.dir/Metadata/FIRational.cpp.o CMakeFiles/FreeImage.dir/Metadata/FreeImageTag.cpp.o CMakeFiles/FreeImage.dir/Metadata/IPTC.cpp.o CMakeFiles/FreeImage.dir/Metadata/TagConversion.cpp.o CMakeFiles/FreeImage.dir/Metadata/TagLib.cpp.o CMakeFiles/FreeImage.dir/FreeImage/MNGHelper.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginJNG.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginMNG.cpp.o CMakeFiles/FreeImage.dir/FreeImage/ZLibInterface.cpp.o CMakeFiles/FreeImage.dir/OpenEXR/Half/half.cpp.o CMakeFiles/FreeImage.dir/FreeImage/PluginPNG.cpp.o -Wl,-rpath,/home/emersont1/OgreDeps/Linux/GNU/bin ../../../../Linux/GNU/bin/libz.a ../../../../Linux/GNU/bin/libpng16.so.16.28.0 -llibpng ../../../../Linux/GNU/bin/libz.so.1.2.11 ../../../../Linux/GNU/bin/libz.a -lm
/usr/bin/ld: cannot find -llibpng
My CMake Script
cmake_minimum_required (VERSION 3.2)
set(CMAKE_EXT_DIR ${CMAKE_SOURCE_DIR}/thirdparty)
#ThirdParty
# Local Stuff
SET(CMAKE_PREFIX_PATH ${CMAKE_EXT_DIR}/zlib ${CMAKE_EXT_DIR}/libpng CACHE INTERNAL "")
# Setup FindPackage
set(ZLIB_ROOT ${CMAKE_EXT_DIR}/zlib CACHE PATH "Local ZLib")
set(ZLIB_DIR ${CMAKE_EXT_DIR}/zlib CACHE PATH "Local ZLib")
set(ZLIB_INCLUDE_DIR ${CMAKE_EXT_DIR}/zlib CACHE PATH "Local ZLib")
set(ZLIB_LIBRARY zlib zlibstatic CACHE PATH "Local ZLib")
add_subdirectory(${CMAKE_EXT_DIR}/zlib)
set(ZLIB_FOUND ON CACHE BOOL "Zlib is Found")
# LibPNG
# Setup FindPackage
set(PNG_DIR ${CMAKE_EXT_DIR}/libpng CACHE PATH "Local LibPNG")
set(PNG_INCLUDE_DIR ${CMAKE_EXT_DIR}/libpng CACHE PATH "Local LibPNG")
set(PNG_LIBRARY png libpng CACHE PATH "Local LibPNG")
set(PNG_FOUND ON CACHE BOOL "Local LibPNG")
#set(PNG_BUILD_ZLIB ON)
add_subdirectory(${CMAKE_EXT_DIR}/libpng)
# FreeType
# ZZipLib
# FreeImage
# Disable Unnecessary Image Formats
set(ENABLE_PNG TRUE CACHE BOOL "Using PNG")
set(ENABLE_JPEG FALSE CACHE BOOL "Do Not Use JPEG")
set(ENABLE_TIFF FALSE CACHE BOOL "Do Not Use TIFF")
set(FREEIMAGE_DYNAMIC_C_RUNTIME TRUE FALSE CACHE BOOL "Static Linking")
add_subdirectory(${CMAKE_EXT_DIR}/freeimage)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.