Skip to content

Commit

Permalink
Cherry Picks Part 2
Browse files Browse the repository at this point in the history
* Various cherry picks from upstream. E.g.: more EXIF, more modern RAW image support
  • Loading branch information
sdneon committed Apr 27, 2024
1 parent 588ec4e commit 7114c56
Show file tree
Hide file tree
Showing 12 changed files with 238 additions and 25 deletions.
11 changes: 11 additions & 0 deletions src/JPEGView.Setup/Product.wxs
Original file line number Diff line number Diff line change
Expand Up @@ -215,6 +215,10 @@
<ComponentRef Id="vcruntime1401DLL"/>
<ComponentRef Id="msvcp140DLL"/>
</Feature>
<!-- dcraw is compiled into JPEGView, but doesn't support the latest (modern) camera formats -->
<Feature Id="FeatureRAW" Title="Camera RAW Files Support (modern cameras)">
<ComponentRef Id="rawDLL"/>
</Feature>
<Feature Id="FeatureLCMS" Title="ICC Profile Support (WebP, JPEG XL, HEIF/HEIC/AVIF)">
<ComponentRef Id="lcmsDLL"/>
</Feature>
Expand Down Expand Up @@ -408,6 +412,7 @@
<!-- csFileEndingsInternal -->
<RegistryValue Root="HKLM" Key="SOFTWARE\Classes\Applications\JPEGView.exe\SupportedTypes" Name=".jpg" Value="" Type="string" />
<RegistryValue Root="HKLM" Key="SOFTWARE\Classes\Applications\JPEGView.exe\SupportedTypes" Name=".jpeg" Value="" Type="string" />
<RegistryValue Root="HKLM" Key="SOFTWARE\Classes\Applications\JPEGView.exe\SupportedTypes" Name=".jfif" Value="" Type="string" />
<RegistryValue Root="HKLM" Key="SOFTWARE\Classes\Applications\JPEGView.exe\SupportedTypes" Name=".bmp" Value="" Type="string" />
<RegistryValue Root="HKLM" Key="SOFTWARE\Classes\Applications\JPEGView.exe\SupportedTypes" Name=".png" Value="" Type="string" />
<RegistryValue Root="HKLM" Key="SOFTWARE\Classes\Applications\JPEGView.exe\SupportedTypes" Name=".tif" Value="" Type="string" />
Expand All @@ -420,6 +425,7 @@
<RegistryValue Root="HKLM" Key="SOFTWARE\Classes\Applications\JPEGView.exe\SupportedTypes" Name=".heic" Value="" Type="string" />
<RegistryValue Root="HKLM" Key="SOFTWARE\Classes\Applications\JPEGView.exe\SupportedTypes" Name=".tga" Value="" Type="string" />
<RegistryValue Root="HKLM" Key="SOFTWARE\Classes\Applications\JPEGView.exe\SupportedTypes" Name=".qoi" Value="" Type="string" />
<RegistryValue Root="HKLM" Key="SOFTWARE\Classes\Applications\JPEGView.exe\SupportedTypes" Name=".psd" Value="" Type="string" />
<!-- csFileEndingsRAW -->
<RegistryValue Root="HKLM" Key="SOFTWARE\Classes\Applications\JPEGView.exe\SupportedTypes" Name=".pef" Value="" Type="string" />
<RegistryValue Root="HKLM" Key="SOFTWARE\Classes\Applications\JPEGView.exe\SupportedTypes" Name=".dng" Value="" Type="string" />
Expand Down Expand Up @@ -509,6 +515,11 @@
<Component Id="msvcp140DLL" Guid="4b47fa28-c3cf-42f4-a035-be08287bedb7">
<File Id="msvcp140.dll" Name="msvcp140.dll" Source="..\JPEGView\vcredist\msvcp140.dll" KeyPath="yes" />
</Component>
<!-- DLL required for RAW Files support (modern cameras using LibRaw) -->
<Component Id="rawDLL" Guid="e469088b-ab00-43cd-a5eb-57f09a6cc3b2">
<File Id="libraw.dll" Name="libraw.dll" Source="..\JPEGView\libraw\bin64\libraw.dll" />
</Component>

<Component Id="apimswincorefilel120DLL" Guid="834081b5-0084-4948-979a-00015e7b5f87">
<File Id="apimswincorefilel120.dll" Name="api-ms-win-core-file-l1-2-0.dll" Source="..\JPEGView\vcredist\api-ms-win-core-file-l1-2-0.dll" KeyPath="yes" />
</Component>
Expand Down
9 changes: 8 additions & 1 deletion src/JPEGView/Config/JPEGView.ini
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,14 @@ FilesProcessedByWIC=*.wdp;*.hdp;*.jxr;*.ico

; File endings of camera RAW files to be searched for embedded JPEG thumb images to display
; Reading just these embedded JPEGs is much faster than decoding the RAW using WIC
FileEndingsRAW=*.pef;*.dng;*.crw;*.nef;*.cr2;*.mrw;*.rw2;*.orf;*.x3f;*.arw;*.kdc;*.nrw;*.dcr;*.sr2;*.raf
FileEndingsRAW=*.pef;*.dng;*.crw;*.nef;*.cr2;*.mrw;*.rw2;*.orf;*.x3f;*.arw;*.kdc;*.nrw;*.dcr;*.sr2;*.raf;*.kc2;*.erf;*.3fr;*.raw;*.mef;*.mos;*.mdc;*.cr3

; Set behavior for opening RAW files listed in FileEndingsRAW
; 0: open embedded thumbnail
; 1: open full size
; 2: open thumbnail, fallback to full size
; 3: open full size, fallback to thumbnail
DisplayFullSizeRAW=0

; If true, reloads the currently displayed image automatically when it is changed by an external program on disk.
; Also reloads the image list when a file in the current directory is added or deleted.
Expand Down
13 changes: 13 additions & 0 deletions src/JPEGView/EXIFDisplayCtl.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,8 @@ void CEXIFDisplayCtl::FillEXIFDataDisplay() {
}
if (pEXIFReader->GetAcquisitionTimePresent()) {
m_pEXIFDisplay->AddLine(CNLS::GetString(_T("Acquisition date:")), pEXIFReader->GetAcquisitionTime());
} else if (pEXIFReader->GetDateTimePresent()) {
m_pEXIFDisplay->AddLine(CNLS::GetString(_T("Exif Date Time:")), pEXIFReader->GetDateTime());
} else {
const FILETIME* pFileTime = pFileList->CurrentModificationTime();
if (pFileTime != NULL) {
Expand Down Expand Up @@ -161,6 +163,9 @@ void CEXIFDisplayCtl::FillEXIFDataDisplay() {
if (pEXIFReader->GetISOSpeedPresent()) {
m_pEXIFDisplay->AddLine(CNLS::GetString(_T("ISO Speed:")), (int)pEXIFReader->GetISOSpeed());
}
if (pEXIFReader->GetSoftwarePresent()) {
m_pEXIFDisplay->AddLine(CNLS::GetString(_T("Software:")), pEXIFReader->GetSoftware());
}
}
else if (pRawMetaData != NULL) {
if (pRawMetaData->GetAcquisitionTime().wYear > 1985) {
Expand All @@ -172,6 +177,14 @@ void CEXIFDisplayCtl::FillEXIFDataDisplay() {
m_pEXIFDisplay->AddLine(CNLS::GetString(_T("Modification date:")), *pFileTime);
}
}
if (pRawMetaData->IsGPSInformationPresent()) {
CString sGPSLocation = CreateGPSString(pRawMetaData->GetGPSLatitude(), pRawMetaData->GetGPSLongitude());
m_pEXIFDisplay->SetGPSLocation(sGPSLocation, CreateGPSURL(pRawMetaData->GetGPSLatitude(), pRawMetaData->GetGPSLongitude()));
m_pEXIFDisplay->AddLine(CNLS::GetString(_T("Location:")), sGPSLocation, true);
if (pRawMetaData->IsGPSAltitudePresent()) {
m_pEXIFDisplay->AddLine(CNLS::GetString(_T("Altitude (m):")), pRawMetaData->GetGPSAltitude(), 0);
}
}
if (pRawMetaData->GetManufacturer()[0] != 0) {
m_pEXIFDisplay->AddLine(CNLS::GetString(_T("Camera model:")), CString(pRawMetaData->GetManufacturer()) + _T(" ") + pRawMetaData->GetModel());
}
Expand Down
27 changes: 24 additions & 3 deletions src/JPEGView/ImageLoadThread.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
#include "PNGWrapper.h"
#include "JXLWrapper.h"
#include "HEIFWrapper.h"
#include "RAWWrapper.h"
#include "QOIWrapper.h"
#include "PSDWrapper.h"
#include "MaxImageDef.h"
Expand Down Expand Up @@ -1218,9 +1219,29 @@ void CImageLoadThread::ProcessReadQOIRequest(CRequest* request) {
void CImageLoadThread::ProcessReadRAWRequest(CRequest * request) {
bool bOutOfMemory = false;
try {
request->Image = CReaderRAW::ReadRawImage(request->FileName, bOutOfMemory);
}
catch (...) {
int fullsize = CSettingsProvider::This().DisplayFullSizeRAW();

#ifndef WINXP
// Try with libraw
UINT nPrevErrorMode = SetErrorMode(SEM_FAILCRITICALERRORS);
try {
if (fullsize == 2 || fullsize == 3) {
request->Image = RawReader::ReadImage(request->FileName, bOutOfMemory, fullsize == 2);
}
if (request->Image == NULL) {
request->Image = RawReader::ReadImage(request->FileName, bOutOfMemory, fullsize == 0 || fullsize == 3);
}
} catch (...) {
// libraw.dll not found or VC++ Runtime not installed
}
SetErrorMode(nPrevErrorMode);
#endif

// Try with dcraw_mod
if (request->Image == NULL && fullsize != 1) {
request->Image = CReaderRAW::ReadRawImage(request->FileName, bOutOfMemory);
}
} catch (...) {
delete request->Image;
request->Image = NULL;
}
Expand Down
36 changes: 21 additions & 15 deletions src/JPEGView/JPEGView.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -69,14 +69,14 @@
<IntDir Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">obj\x86\$(Configuration)\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</LinkIncremental>
<IncludePath Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)..\..\deps\WTL-sf\Include;$(ProjectDir)libpng-apng\include;$(ProjectDir)libjxl\include;$(ProjectDir)\libheif\include;$(ProjectDir)\libavif\include;$(ProjectDir)\lcms2\include;$(IncludePath)</IncludePath>
<IncludePath Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)..\..\deps\WTL-sf\Include;$(ProjectDir)libpng-apng\include;$(ProjectDir)libjxl\include;$(ProjectDir)\libheif\include;$(ProjectDir)\libavif\include;$(ProjectDir)\lcms2\include;$(IncludePath)</IncludePath>
<LibraryPath Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)libjpeg-turbo\lib;$(ProjectDir)libpng-apng\lib;$(ProjectDir)libjxl\lib;$(ProjectDir)libheif\lib;$(ProjectDir)\libavif\include;$(ProjectDir)\lcms2\lib;$(LibraryPath)</LibraryPath>
<LibraryPath Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)libjpeg-turbo\lib64;$(ProjectDir)libpng-apng\lib64;$(ProjectDir)libjxl\lib64;$(ProjectDir)libheif\lib64;$(ProjectDir)\libavif\include;$(ProjectDir)lcms2\lib64;$(LibraryPath)</LibraryPath>
<IncludePath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)..\..\deps\WTL-sf\Include;$(ProjectDir)libpng-apng\include;$(ProjectDir)libjxl\include;$(ProjectDir)\libheif\include;$(ProjectDir)\libavif\include;$(ProjectDir)\lcms2\include;$(IncludePath)</IncludePath>
<IncludePath Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)..\..\deps\WTL-sf\Include;$(ProjectDir)libpng-apng\include;$(ProjectDir)libjxl\include;$(ProjectDir)\libheif\include;$(ProjectDir)\libavif\include;$(ProjectDir)\lcms2\include;$(IncludePath)</IncludePath>
<LibraryPath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)libjpeg-turbo\lib;$(ProjectDir)libpng-apng\lib;$(ProjectDir)libjxl\lib;$(ProjectDir)libheif\lib;$(ProjectDir)\libavif\include;$(ProjectDir)lcms2\lib;$(LibraryPath)</LibraryPath>
<LibraryPath Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)libjpeg-turbo\lib64;$(ProjectDir)libpng-apng\lib64;$(ProjectDir)libjxl\lib64;$(ProjectDir)libheif\lib64;$(ProjectDir)\libavif\include;$(ProjectDir)lcms2\lib64;$(LibraryPath)</LibraryPath>
<IncludePath Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)..\..\deps\WTL-sf\Include;$(ProjectDir)libpng-apng\include;$(ProjectDir)libjxl\include;$(ProjectDir)\libheif\include;$(ProjectDir)\libavif\include;$(ProjectDir)\lcms2\include;$(ProjectDir)\libraw\include;$(IncludePath)</IncludePath>
<IncludePath Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)..\..\deps\WTL-sf\Include;$(ProjectDir)libpng-apng\include;$(ProjectDir)libjxl\include;$(ProjectDir)\libheif\include;$(ProjectDir)\libavif\include;$(ProjectDir)\lcms2\include;$(ProjectDir)\libraw\include;$(IncludePath)</IncludePath>
<LibraryPath Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">$(ProjectDir)libjpeg-turbo\lib;$(ProjectDir)libpng-apng\lib;$(ProjectDir)libjxl\lib;$(ProjectDir)libheif\lib;$(ProjectDir)\libavif\include;$(ProjectDir)lcms2\lib;$(ProjectDir)libraw\lib;$(LibraryPath)</LibraryPath>
<LibraryPath Condition="'$(Configuration)|$(Platform)'=='Release|x64'">$(ProjectDir)libjpeg-turbo\lib64;$(ProjectDir)libpng-apng\lib64;$(ProjectDir)libjxl\lib64;$(ProjectDir)libheif\lib64;$(ProjectDir)\libavif\include;$(ProjectDir)lcms2\lib64;$(ProjectDir)libraw\lib64;$(LibraryPath)</LibraryPath>
<IncludePath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)..\..\deps\WTL-sf\Include;$(ProjectDir)libpng-apng\include;$(ProjectDir)libjxl\include;$(ProjectDir)\libheif\include;$(ProjectDir)\libavif\include;$(ProjectDir)\lcms2\include;$(ProjectDir)\libraw\include;$(IncludePath)</IncludePath>
<IncludePath Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)..\..\deps\WTL-sf\Include;$(ProjectDir)libpng-apng\include;$(ProjectDir)libjxl\include;$(ProjectDir)\libheif\include;$(ProjectDir)\libavif\include;$(ProjectDir)\lcms2\include;$(ProjectDir)\libraw\include;$(IncludePath)</IncludePath>
<LibraryPath Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">$(ProjectDir)libjpeg-turbo\lib;$(ProjectDir)libpng-apng\lib;$(ProjectDir)libjxl\lib;$(ProjectDir)libheif\lib;$(ProjectDir)\libavif\include;$(ProjectDir)lcms2\lib;$(ProjectDir)libraw\lib;$(LibraryPath)</LibraryPath>
<LibraryPath Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">$(ProjectDir)libjpeg-turbo\lib64;$(ProjectDir)libpng-apng\lib64;$(ProjectDir)libjxl\lib64;$(ProjectDir)libheif\lib64;$(ProjectDir)\libavif\include;$(ProjectDir)lcms2\lib64;$(ProjectDir)libraw\lib64;$(LibraryPath)</LibraryPath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
<OutDir>bin\x64\$(Configuration)\</OutDir>
Expand Down Expand Up @@ -119,7 +119,7 @@
<AdditionalIncludeDirectories>$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ResourceCompile>
<Link>
<AdditionalDependencies>Dbghelp.lib;gdiplus.lib;WICLoader.lib;turbojpeg-static.lib;webp.lib;libpng16.lib;zlib.lib;jxl_dec.lib;jxl_threads.lib;heif.lib;lcms2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>Dbghelp.lib;gdiplus.lib;WICLoader.lib;turbojpeg-static.lib;webp.lib;libpng16.lib;zlib.lib;jxl_dec.lib;jxl_threads.lib;heif.lib;lcms2.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>bin\x86\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ModuleDefinitionFile>
</ModuleDefinitionFile>
Expand All @@ -136,6 +136,7 @@
<PostBuildEvent>
<Command>xcopy "$(ProjectDir)Config\*" "$(ProjectDir)\$(OutDir)" /Y /C /D
xcopy "$(ProjectDir)libjxl\bin\*.dll" "$(ProjectDir)$(OutDir)" /Y /D
xcopy "$(ProjectDir)libraw\bin\*.dll" "$(ProjectDir)$(OutDir)" /Y /D
xcopy "$(ProjectDir)libheif\bin\*.dll" "$(ProjectDir)$(OutDir)" /Y /D</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
Expand Down Expand Up @@ -170,13 +171,13 @@ xcopy "$(ProjectDir)libheif\bin\*.dll" "$(ProjectDir)$(OutDir)" /Y /D</Command>
<AdditionalIncludeDirectories>$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ResourceCompile>
<Link>
<AdditionalDependencies>legacy_stdio_definitions.lib;legacy_stdio_wide_specifiers.lib;Dbghelp.lib;gdiplus.lib;WICLoader.lib;turbojpeg-static.lib;webp.lib;libpng16.lib;zlib.lib;avif.lib;jxl_dec.lib;jxl_threads.lib;heif.lib;lcms2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>legacy_stdio_definitions.lib;legacy_stdio_wide_specifiers.lib;Dbghelp.lib;gdiplus.lib;WICLoader.lib;turbojpeg-static.lib;webp.lib;libpng16.lib;zlib.lib;avif.lib;jxl_dec.lib;jxl_threads.lib;heif.lib;lcms2.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>bin\x64\$(Configuration);libavif\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ModuleDefinitionFile>
</ModuleDefinitionFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<DelayLoadDLLs>WICLoader.dll;webp.dll;jxl_dec.dll;jxl_threads.dll;heif.dll;lcms2.dll</DelayLoadDLLs>
<DelayLoadDLLs>WICLoader.dll;webp.dll;jxl_dec.dll;jxl_threads.dll;heif.dll;lcms2.dll;libraw.dll</DelayLoadDLLs>
<IgnoreSpecificDefaultLibraries>LIBCMT</IgnoreSpecificDefaultLibraries>
<AdditionalOptions>/IGNORE:4099 %(AdditionalOptions)</AdditionalOptions>
</Link>
Expand All @@ -187,6 +188,7 @@ xcopy "$(ProjectDir)libheif\bin\*.dll" "$(ProjectDir)$(OutDir)" /Y /D</Command>
<Command>xcopy "$(ProjectDir)Config\*" "$(ProjectDir)\$(OutDir)" /Y /C /D
xcopy "$(ProjectDir)libjxl\bin64\*.dll" "$(ProjectDir)$(OutDir)" /Y /D
xcopy "$(ProjectDir)libheif\bin64\*.dll" "$(ProjectDir)$(OutDir)" /Y /D
xcopy "$(ProjectDir)libraw\bin64\*.dll" "$(ProjectDir)$(OutDir)" /Y /D
xcopy "$(ProjectDir)lcms2\bin64\*.dll" "$(ProjectDir)$(OutDir)" /Y /D</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
Expand Down Expand Up @@ -227,20 +229,21 @@ xcopy "$(ProjectDir)lcms2\bin64\*.dll" "$(ProjectDir)$(OutDir)" /Y /D</Command>
<AdditionalIncludeDirectories>$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ResourceCompile>
<Link>
<AdditionalDependencies>gdiplus.lib;WICLoader.lib;turbojpeg-static.lib;webp.lib;libpng16.lib;zlib.lib;jxl_dec.lib;jxl_threads.lib;heif.lib;lcms2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>gdiplus.lib;WICLoader.lib;turbojpeg-static.lib;webp.lib;libpng16.lib;zlib.lib;jxl_dec.lib;jxl_threads.lib;heif.lib;lcms2.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>bin\x86\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<TargetMachine>MachineX86</TargetMachine>
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
<DelayLoadDLLs>WICLoader.dll;webp.dll;jxl_dec.dll;jxl_threads.dll;heif.dll;lcms2.dll</DelayLoadDLLs>
<DelayLoadDLLs>WICLoader.dll;webp.dll;jxl_dec.dll;jxl_threads.dll;heif.dll;lcms2.dll;libraw.dll</DelayLoadDLLs>
</Link>
<Manifest>
<EnableDPIAwareness>true</EnableDPIAwareness>
</Manifest>
<PostBuildEvent>
<Command>xcopy "$(ProjectDir)Config\*" "$(ProjectDir)\$(OutDir)" /Y /C /D
xcopy "$(ProjectDir)libjxl\bin\*.dll" "$(ProjectDir)$(OutDir)" /Y /D
xcopy "$(ProjectDir)libraw\bin\*.dll" "$(ProjectDir)$(OutDir)" /Y /D
xcopy "$(ProjectDir)libheif\bin\*.dll" "$(ProjectDir)$(OutDir)" /Y /D</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
Expand Down Expand Up @@ -281,12 +284,12 @@ xcopy "$(ProjectDir)libheif\bin\*.dll" "$(ProjectDir)$(OutDir)" /Y /D</Command>
<AdditionalIncludeDirectories>$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ResourceCompile>
<Link>
<AdditionalDependencies>legacy_stdio_definitions.lib;legacy_stdio_wide_specifiers.lib;gdiplus.lib;WICLoader.lib;turbojpeg-static.lib;webp.lib;libpng16.lib;zlib.lib;avif.lib;jxl_dec.lib;jxl_threads.lib;heif.lib;lcms2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalDependencies>legacy_stdio_definitions.lib;legacy_stdio_wide_specifiers.lib;gdiplus.lib;WICLoader.lib;turbojpeg-static.lib;webp.lib;libpng16.lib;zlib.lib;avif.lib;jxl_dec.lib;jxl_threads.lib;heif.lib;lcms2.lib;libraw.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>bin\x64\$(Configuration);libavif\lib64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>false</GenerateDebugInformation>
<SubSystem>Windows</SubSystem>
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
<DelayLoadDLLs>WICLoader.dll;webp.dll;jxl_dec.dll;jxl_threads.dll;heif.dll;lcms2.dll</DelayLoadDLLs>
<DelayLoadDLLs>WICLoader.dll;webp.dll;jxl_dec.dll;jxl_threads.dll;heif.dll;lcms2.dll;libraw.dll</DelayLoadDLLs>
</Link>
<Manifest>
<EnableDPIAwareness>true</EnableDPIAwareness>
Expand All @@ -295,6 +298,7 @@ xcopy "$(ProjectDir)libheif\bin\*.dll" "$(ProjectDir)$(OutDir)" /Y /D</Command>
<Command>xcopy "$(ProjectDir)Config\*" "$(ProjectDir)\$(OutDir)" /Y /C /D
xcopy "$(ProjectDir)libjxl\bin64\*.dll" "$(ProjectDir)$(OutDir)" /Y /D
xcopy "$(ProjectDir)libheif\bin64\*.dll" "$(ProjectDir)$(OutDir)" /Y /D
xcopy "$(ProjectDir)libraw\bin64\*.dll" "$(ProjectDir)$(OutDir)" /Y /D
xcopy "$(ProjectDir)lcms2\bin64\*.dll" "$(ProjectDir)$(OutDir)" /Y /D</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
Expand Down Expand Up @@ -340,6 +344,7 @@ xcopy "$(ProjectDir)lcms2\bin64\*.dll" "$(ProjectDir)$(OutDir)" /Y /D</Command>
<ClCompile Include="ProcessingThreadPool.cpp" />
<ClCompile Include="PSDWrapper.cpp" />
<ClCompile Include="QOIWrapper.cpp" />
<ClCompile Include="RAWWrapper.cpp" />
<ClCompile Include="ReaderBMP.cpp" />
<ClCompile Include="ReaderTGA.cpp" />
<ClCompile Include="ResizeDlg.cpp" />
Expand Down Expand Up @@ -433,6 +438,7 @@ xcopy "$(ProjectDir)lcms2\bin64\*.dll" "$(ProjectDir)$(OutDir)" /Y /D</Command>
<ClInclude Include="PSDWrapper.h" />
<ClInclude Include="QOIWrapper.h" />
<ClInclude Include="RawMetadata.h" />
<ClInclude Include="RAWWrapper.h" />
<ClInclude Include="ReaderBMP.h" />
<ClInclude Include="ReaderTGA.h" />
<ClInclude Include="ResizeDlg.h" />
Expand Down
Loading

0 comments on commit 7114c56

Please sign in to comment.