C++ builder xe 用imageen组件ImageEnView1合并多个图片导出一个pdf

//其中ImageFiles是一个ImageFiles = new TStringList();需要先载入图片文件路径
void __fastcall TForm1::BitBtn1Click(TObject *Sender)
{
TImageEnMView *tempView = new TImageEnMView(this);
// 获取当前图像
try
{
tempView->Clear();
SaveDialog1->Filter = "PDF files (*.pdf)|All files (*.*)|*.*";
// 设置默认文件名
SaveDialog1->FileName = "Merged_";
SaveDialog1->DefaultExt="pdf";
if(SaveDialog1->Execute())
{
// 2. 循环添加所有目标图片路径
int HBsum=0;
for (int i = 0; i < ImageEnMView1->ImageCount; i++)
{
// 使用Checked属性而不是SetCheck方法
if( ImageEnMView1->Checked[i] )
{
tempView->MIO->LoadFromFile(ImageFiles->Strings[i]);
HBsum++;
}
}
if(HBsum>0)
{
// 3. 执行多页PDF导出操作
//tempView->SaveToPDF(SaveDialog1->FileName);
tempView->MIO->SaveToFilePDF(SaveDialog1->FileName);
ShowMessage("成功合并 "+String(HBsum)+" 图片并导出PDF!");
}
else
ShowMessage("没有选择合并的图片!");
}
}
__finally {
delete tempView;
}
}
