我需要加载图像并将其传递给代码。我试图修改这个library的部分代码。这个库是为windows设计的,下面是我需要为linux环境修改的代码。有人可以帮助我与其相当的Linux。如何从本地目录中以C++加载图像
System::Drawing::Bitmap^ m_bmpImage;
System::String^ sFile = gcnew System::String(txtFilePath->Text);
m_bmpImage = gcnew System::Drawing::Bitmap(sFile);
BitmapData^ bmpData = m_bmpImage->LockBits(
System::Drawing::Rectangle(0, 0, m_bmpImage->Width, m_bmpImage->Height),
ImageLockMode::ReadWrite, PixelFormat::Format24bppRgb);
ImageData imgData;
imgData.Resize(bmpData->Width, bmpData->Height, 3, bmpData->Stride);
memcpy(imgData.Data, (char*)(void*)bmpData->Scan0, bmpData->Stride*bmpData->Height);
m_bmpImage->UnlockBits(bmpData);
这不是C++它是C++/CLI不能在Linux上工作,除非有一些你可以使用的单声道魔法。 – doctorlove
@doctorlove是的,它不会工作。我需要它的等同于Linux? – 2vision2
Linux上有许多图像加载库可用。这两种类型都是针对单一图像类型(如用于PNG图像的libpng,用于JPEG图像的libjpeg等),然后使用这些特定库来加载多种格式的库。快速搜索应该找到你的东西。 –