如題,直接上代碼片段
//
1.選擇pdf文件
var dialog = new OpenFileDialog();
dialog.Filter = " pdf文件|*.pdf ";
var dialogResult = dialog.ShowDialog();
if (dialogResult != System.Windows.Forms.DialogResult.OK) {
return;
}
// 和選擇的文件並列創建一個目錄
string filePath = dialog.FileName;
string directoryPath = filePath + " 目錄 ";
// aspose許可證
Aspose.Pdf.License l = new Aspose.Pdf.License();
string licenseName = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, " Aspose.Total.Product.Family.lic ");
l.SetLicense(licenseName);
// 定義Jpeg轉換設備
Aspose.Pdf.Document document = new Aspose.Pdf.Document(filePath);
var device = new Aspose.Pdf.Devices.JpegDevice();
int quality = int.Parse( this.comboBox1.SelectedItem.ToString());
directoryPath += quality;
Directory.CreateDirectory(directoryPath);
// 默認質量為100,設置質量的好壞與處理速度不成正比,甚至是設置的質量越低反而花的時間越長,懷疑處理過程是先生成高質量的再壓縮
device = new Aspose.Pdf.Devices.JpegDevice(quality);
// 遍歷每一頁轉為jpg
for ( var i = 1; i <= document.Pages.Count; i++) {
string filePathOutPut = Path.Combine(directoryPath, string.Format( " {0}.jpg ", i));
FileStream fs = new FileStream(filePathOutPut, FileMode.OpenOrCreate);
try {
device.Process(document.Pages[i], fs);
fs.Close();
} catch (Exception ex) {
fs.Close();
File.Delete(filePathOutPut);
}
var dialog = new OpenFileDialog();
dialog.Filter = " pdf文件|*.pdf ";
var dialogResult = dialog.ShowDialog();
if (dialogResult != System.Windows.Forms.DialogResult.OK) {
return;
}
// 和選擇的文件並列創建一個目錄
string filePath = dialog.FileName;
string directoryPath = filePath + " 目錄 ";
// aspose許可證
Aspose.Pdf.License l = new Aspose.Pdf.License();
string licenseName = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, " Aspose.Total.Product.Family.lic ");
l.SetLicense(licenseName);
// 定義Jpeg轉換設備
Aspose.Pdf.Document document = new Aspose.Pdf.Document(filePath);
var device = new Aspose.Pdf.Devices.JpegDevice();
int quality = int.Parse( this.comboBox1.SelectedItem.ToString());
directoryPath += quality;
Directory.CreateDirectory(directoryPath);
// 默認質量為100,設置質量的好壞與處理速度不成正比,甚至是設置的質量越低反而花的時間越長,懷疑處理過程是先生成高質量的再壓縮
device = new Aspose.Pdf.Devices.JpegDevice(quality);
// 遍歷每一頁轉為jpg
for ( var i = 1; i <= document.Pages.Count; i++) {
string filePathOutPut = Path.Combine(directoryPath, string.Format( " {0}.jpg ", i));
FileStream fs = new FileStream(filePathOutPut, FileMode.OpenOrCreate);
try {
device.Process(document.Pages[i], fs);
fs.Close();
} catch (Exception ex) {
fs.Close();
File.Delete(filePathOutPut);
}
}