要将图片中的白色变为透明,你可以使用 Qt 提供QImage类实现这一图像处理功能。以下是具体的实现方法:
#include <QImage>
QImage makeWhiteTransparent(const QImage& image)
{
QImage resultImage = image.convertToFormat(QImage::Format_ARGB32);
for (int y = 0; y < resultImage.height(); ++y)
{
for (int x = 0; x < resultImage.width(); ++x)
{
QRgb pixel = resultImage.pixel(x, y);
if (qRed(pixel) == 255 && qGreen(pixel) == 255 && qBlue(pixel) == 255)
{
resultImage.setPixel(x, y, qRgba(0, 0, 0, 0)); // 设置为完全透明
}
}
}
return resultImage;
}
在使用 Qt 进行图像处理后,你可以使用 QImage 的 save() 函数将图像保存到文件中。
QImage inputImage("path/to/input/image.png");
QImage outputImage = makeWhiteTransparent(inputImage);
QString outputPath = "path/to/output/image.png";
outputImage.save(outputPath);