CFileDialog 保存图片
时间: 2024-04-05 16:26:12 浏览: 28
以下是两种使用CFileDialog保存图片的例子:
1. 使用MFC的CFileDialog保存图片:
```cpp
CString strFilter = _T("Image Files (*.bmp)|*.bmp|BMP File (*.bmp)|*.bmp|PNG File (*.png)|*.png|JPG File (*.jpg)|*.jpg|All Files (*.*)|*.*||");
CFileDialog dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, strFilter);
if (dlg.DoModal() == IDOK) {
CString str_totalPath = dlg.GetPathName();
str_totalPath += ".bmp";
USES_CONVERSION;
char* Filename = T2A(str_totalPath);
if (m_crtImage.IsInitialized()) {
WriteImage(m_crtImage, "bmp", 0, Filename);//保存图像
}
}
```
2. 使用OpenCV的CFileDialog保存图片:
```cpp
HObject hImage;//待读取的图像
CString strFilter = _T("Image Files (*.bmp)|*.bmp|BMP File (*.bmp)|*.bmp|PNG File (*.png)|*.png|JPG File (*.jpg)|*.jpg|All Files (*.*)|*.*||");
CFileDialog dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT, strFilter);
if (dlg.DoModal() == IDOK) {
CString cstrImagePath = dlg.GetPathName();//获取当前选择图像路径
USES_CONVERSION;
char* chFilename = T2A(cstrImagePath);
ReadImage(&hImage, chFilename); //读取图像
}
```