Add project files.
This commit is contained in:
parent
0f85dcf5d9
commit
c8aabe9773
77
fix_colors.cpp
Normal file
77
fix_colors.cpp
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
#include "fix_colors.hpp"
|
||||||
|
|
||||||
|
#include <algorithm>
|
||||||
|
#include <vector>
|
||||||
|
|
||||||
|
#define ALPHA_THRESHOLD 127
|
||||||
|
|
||||||
|
struct Coord {
|
||||||
|
int x, y;
|
||||||
|
};
|
||||||
|
|
||||||
|
static ColorRGB FindClosestOpaque(const Image& image, size_t x, size_t y, const std::vector<Coord>& kernel) {
|
||||||
|
for (const Coord& c : kernel) {
|
||||||
|
int cx = x + c.x;
|
||||||
|
int cy = y + c.y;
|
||||||
|
|
||||||
|
if (cx < 0 || cx >= image.GetWidth() || cy < 0 || cy >= image.GetHeight()) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
const ColorRGBA& pixel = image.At(cx, cy);
|
||||||
|
|
||||||
|
if (pixel.a >= ALPHA_THRESHOLD) {
|
||||||
|
return pixel.rgb;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return { 255, 0, 0 };
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void FixColors::Fix(const Image& src, Image& dst, float max_dist) {
|
||||||
|
|
||||||
|
std::vector<Coord> kernel;
|
||||||
|
for (int y = -max_dist; y <= max_dist; y++) {
|
||||||
|
for (int x = -max_dist; x <= max_dist; x++) {
|
||||||
|
kernel.push_back({ x, y });
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//kernel.erase(std::remove_if(kernel.begin(), kernel.end(), [max_dist](const Coord& c) {
|
||||||
|
// return c.x * c.x + c.y * c.y > max_dist * max_dist;
|
||||||
|
//}), kernel.end());
|
||||||
|
|
||||||
|
std::sort(kernel.begin(), kernel.end(), [](const Coord& a, const Coord& b) {
|
||||||
|
return a.x * a.x + a.y * a.y < b.x * b.x + b.y * b.y;
|
||||||
|
});
|
||||||
|
|
||||||
|
for (size_t y = 0; y < src.GetHeight(); y++) {
|
||||||
|
for (size_t x = 0; x < src.GetWidth(); x++) {
|
||||||
|
const ColorRGBA& pixel_src = src.At(x, y);
|
||||||
|
ColorRGBA& pixel_dst = dst.At(x, y);
|
||||||
|
|
||||||
|
pixel_dst.a = pixel_src.a;
|
||||||
|
|
||||||
|
if (pixel_src.a < ALPHA_THRESHOLD) {
|
||||||
|
pixel_dst.rgb = FindClosestOpaque(src, x, y, kernel);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
pixel_dst.rgb = pixel_src.rgb;
|
||||||
|
}
|
||||||
|
//pixel_dst.a = 255;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//size_t i = 0;
|
||||||
|
//for (const Coord& c : kernel) {
|
||||||
|
// ColorRGBA& pixel = image.At(c.x + 40, c.y + 40);
|
||||||
|
//
|
||||||
|
// uint8_t intensity = i * 255 / kernel.size();
|
||||||
|
//
|
||||||
|
// pixel.rgb = { intensity, 0, 0 };
|
||||||
|
// pixel.a = 255;
|
||||||
|
|
||||||
|
// i++;
|
||||||
|
//}
|
||||||
|
}
|
||||||
9
fix_colors.hpp
Normal file
9
fix_colors.hpp
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "image.hpp"
|
||||||
|
|
||||||
|
class FixColors {
|
||||||
|
|
||||||
|
public:
|
||||||
|
static void Fix(const Image& src, Image& dst, float max_dist);
|
||||||
|
};
|
||||||
44
image.cpp
Normal file
44
image.cpp
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
#include "image.hpp"
|
||||||
|
|
||||||
|
#include <stb_image.h>
|
||||||
|
#include <stb_image_write.h>
|
||||||
|
#include <stdexcept>
|
||||||
|
|
||||||
|
Image::Image(const std::string& path) {
|
||||||
|
int width, height, channels;
|
||||||
|
stbi_uc* data = stbi_load(path.c_str(), &width, &height, &channels, 4);
|
||||||
|
|
||||||
|
if (!data) {
|
||||||
|
throw std::runtime_error("Failed to load image: " + path);
|
||||||
|
}
|
||||||
|
|
||||||
|
m_width = width;
|
||||||
|
m_height = height;
|
||||||
|
m_data = std::make_unique<ColorRGBA[]>(m_width * m_height);
|
||||||
|
|
||||||
|
for (size_t y = 0; y < m_height; y++) {
|
||||||
|
for (size_t x = 0; x < m_width; x++) {
|
||||||
|
size_t idx_dst = y * m_width + x;
|
||||||
|
size_t idx_src = idx_dst * 4;
|
||||||
|
|
||||||
|
ColorRGBA& pixel = m_data[idx_dst];
|
||||||
|
|
||||||
|
pixel.rgb.r = data[idx_src + 0];
|
||||||
|
pixel.rgb.g = data[idx_src + 1];
|
||||||
|
pixel.rgb.b = data[idx_src + 2];
|
||||||
|
pixel.a = data[idx_src + 3];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
stbi_image_free(data);
|
||||||
|
}
|
||||||
|
|
||||||
|
Image::Image(size_t width, size_t height) {
|
||||||
|
m_width = width;
|
||||||
|
m_height = height;
|
||||||
|
m_data = std::make_unique<ColorRGBA[]>(m_width * m_height);
|
||||||
|
}
|
||||||
|
|
||||||
|
void Image::Save(const std::string& path) const {
|
||||||
|
stbi_write_png(path.c_str(), m_width, m_height, 4, m_data.get(), m_width * 4);
|
||||||
|
}
|
||||||
41
image.hpp
Normal file
41
image.hpp
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include <cstdlib>
|
||||||
|
#include <memory>
|
||||||
|
#include <string>
|
||||||
|
|
||||||
|
struct ColorRGB {
|
||||||
|
uint8_t r;
|
||||||
|
uint8_t g;
|
||||||
|
uint8_t b;
|
||||||
|
};
|
||||||
|
|
||||||
|
struct ColorRGBA {
|
||||||
|
ColorRGB rgb;
|
||||||
|
uint8_t a;
|
||||||
|
};
|
||||||
|
|
||||||
|
class Image {
|
||||||
|
size_t m_width;
|
||||||
|
size_t m_height;
|
||||||
|
|
||||||
|
std::unique_ptr<ColorRGBA[]> m_data;
|
||||||
|
|
||||||
|
public:
|
||||||
|
Image(const std::string& path);
|
||||||
|
Image(size_t width, size_t height);
|
||||||
|
|
||||||
|
size_t GetWidth() const { return m_width; }
|
||||||
|
size_t GetHeight() const { return m_height; }
|
||||||
|
|
||||||
|
ColorRGBA& At(size_t x, size_t y) {
|
||||||
|
return m_data[y * m_width + x];
|
||||||
|
}
|
||||||
|
|
||||||
|
const ColorRGBA& At(size_t x, size_t y) const {
|
||||||
|
return m_data[y * m_width + x];
|
||||||
|
}
|
||||||
|
|
||||||
|
void Save(const std::string& path) const;
|
||||||
|
|
||||||
|
};
|
||||||
30
main.cpp
Normal file
30
main.cpp
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
// proctex.cpp : This file contains the 'main' function. Program execution begins and ends there.
|
||||||
|
//
|
||||||
|
|
||||||
|
#include <iostream>
|
||||||
|
|
||||||
|
#include <memory>
|
||||||
|
|
||||||
|
#include "image.hpp"
|
||||||
|
#include "fix_colors.hpp"
|
||||||
|
|
||||||
|
int main() {
|
||||||
|
|
||||||
|
Image input_img("image.png");
|
||||||
|
Image output_img(input_img.GetWidth(), input_img.GetHeight());
|
||||||
|
|
||||||
|
FixColors::Fix(input_img, output_img, std::max(input_img.GetWidth(), input_img.GetHeight()));
|
||||||
|
|
||||||
|
output_img.Save("fixed_image.png");
|
||||||
|
}
|
||||||
|
|
||||||
|
// Run program: Ctrl + F5 or Debug > Start Without Debugging menu
|
||||||
|
// Debug program: F5 or Debug > Start Debugging menu
|
||||||
|
|
||||||
|
// Tips for Getting Started:
|
||||||
|
// 1. Use the Solution Explorer window to add/manage files
|
||||||
|
// 2. Use the Team Explorer window to connect to source control
|
||||||
|
// 3. Use the Output window to see build output and other messages
|
||||||
|
// 4. Use the Error List window to view errors
|
||||||
|
// 5. Go to Project > Add New Item to create new code files, or Project > Add Existing Item to add existing code files to the project
|
||||||
|
// 6. In the future, to open this project again, go to File > Open > Project and select the .sln file
|
||||||
31
texproc.sln
Normal file
31
texproc.sln
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
|
||||||
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
|
# Visual Studio Version 17
|
||||||
|
VisualStudioVersion = 17.8.34330.188
|
||||||
|
MinimumVisualStudioVersion = 10.0.40219.1
|
||||||
|
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "texproc", "texproc.vcxproj", "{ED18FA33-5CF7-40FC-9C21-1B8D5C08C78E}"
|
||||||
|
EndProject
|
||||||
|
Global
|
||||||
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
Debug|x64 = Debug|x64
|
||||||
|
Debug|x86 = Debug|x86
|
||||||
|
Release|x64 = Release|x64
|
||||||
|
Release|x86 = Release|x86
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
|
{ED18FA33-5CF7-40FC-9C21-1B8D5C08C78E}.Debug|x64.ActiveCfg = Debug|x64
|
||||||
|
{ED18FA33-5CF7-40FC-9C21-1B8D5C08C78E}.Debug|x64.Build.0 = Debug|x64
|
||||||
|
{ED18FA33-5CF7-40FC-9C21-1B8D5C08C78E}.Debug|x86.ActiveCfg = Debug|Win32
|
||||||
|
{ED18FA33-5CF7-40FC-9C21-1B8D5C08C78E}.Debug|x86.Build.0 = Debug|Win32
|
||||||
|
{ED18FA33-5CF7-40FC-9C21-1B8D5C08C78E}.Release|x64.ActiveCfg = Release|x64
|
||||||
|
{ED18FA33-5CF7-40FC-9C21-1B8D5C08C78E}.Release|x64.Build.0 = Release|x64
|
||||||
|
{ED18FA33-5CF7-40FC-9C21-1B8D5C08C78E}.Release|x86.ActiveCfg = Release|Win32
|
||||||
|
{ED18FA33-5CF7-40FC-9C21-1B8D5C08C78E}.Release|x86.Build.0 = Release|Win32
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
|
HideSolutionNode = FALSE
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||||
|
SolutionGuid = {6D1C48F6-3834-4AAE-A82F-83CD137E839A}
|
||||||
|
EndGlobalSection
|
||||||
|
EndGlobal
|
||||||
144
texproc.vcxproj
Normal file
144
texproc.vcxproj
Normal file
@ -0,0 +1,144 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="fix_colors.cpp" />
|
||||||
|
<ClCompile Include="image.cpp" />
|
||||||
|
<ClCompile Include="main.cpp" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClInclude Include="fix_colors.hpp" />
|
||||||
|
<ClInclude Include="image.hpp" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Image Include="image.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<VCProjectVersion>17.0</VCProjectVersion>
|
||||||
|
<Keyword>Win32Proj</Keyword>
|
||||||
|
<ProjectGuid>{ed18fa33-5cf7-40fc-9c21-1b8d5c08c78e}</ProjectGuid>
|
||||||
|
<RootNamespace>texproc</RootNamespace>
|
||||||
|
<WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>v143</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>v143</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>v143</PlatformToolset>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>v143</PlatformToolset>
|
||||||
|
<WholeProgramOptimization>true</WholeProgramOptimization>
|
||||||
|
<CharacterSet>Unicode</CharacterSet>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="Shared">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SDLCheck>true</SDLCheck>
|
||||||
|
<PreprocessorDefinitions>WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ConformanceMode>true</ConformanceMode>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<SDLCheck>true</SDLCheck>
|
||||||
|
<PreprocessorDefinitions>WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ConformanceMode>true</ConformanceMode>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<SDLCheck>true</SDLCheck>
|
||||||
|
<PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ConformanceMode>true</ConformanceMode>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<ClCompile>
|
||||||
|
<WarningLevel>Level3</WarningLevel>
|
||||||
|
<FunctionLevelLinking>true</FunctionLevelLinking>
|
||||||
|
<IntrinsicFunctions>true</IntrinsicFunctions>
|
||||||
|
<SDLCheck>true</SDLCheck>
|
||||||
|
<PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
|
||||||
|
<ConformanceMode>true</ConformanceMode>
|
||||||
|
</ClCompile>
|
||||||
|
<Link>
|
||||||
|
<SubSystem>Console</SubSystem>
|
||||||
|
<EnableCOMDATFolding>true</EnableCOMDATFolding>
|
||||||
|
<OptimizeReferences>true</OptimizeReferences>
|
||||||
|
<GenerateDebugInformation>true</GenerateDebugInformation>
|
||||||
|
</Link>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
41
texproc.vcxproj.filters
Normal file
41
texproc.vcxproj.filters
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup>
|
||||||
|
<Filter Include="Source Files">
|
||||||
|
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||||
|
<Extensions>cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||||
|
</Filter>
|
||||||
|
<Filter Include="Header Files">
|
||||||
|
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
||||||
|
<Extensions>h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd</Extensions>
|
||||||
|
</Filter>
|
||||||
|
<Filter Include="Resource Files">
|
||||||
|
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
||||||
|
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
|
||||||
|
</Filter>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="fix_colors.cpp">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="image.cpp">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="main.cpp">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClInclude Include="fix_colors.hpp">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="image.hpp">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Image Include="image.png">
|
||||||
|
<Filter>Resource Files</Filter>
|
||||||
|
</Image>
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
Loading…
x
Reference in New Issue
Block a user