程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> Office文件上傳自動生成縮略圖,office文件上傳

Office文件上傳自動生成縮略圖,office文件上傳

編輯:C#入門知識

Office文件上傳自動生成縮略圖,office文件上傳


前不久產品經理提出一個X的需求,說上傳office文件的時候需要將首頁自動截圖,用於顯示文件列表的時候將文件第一頁縮略圖展示給用戶。
實現的方式有多種,這裡給大家介紹一個簡單實用的方案,用起來非常方便。

1.Aspose.Pdf實現將pdf轉換為圖片功能,獲取pdf文件流 通過aspose讀取第一頁保存為圖片

  //filestream為pdf文件流

Aspose.Pdf.Document pdfDocument = new Aspose.Pdf.Document(filestream);

//saveDirectory為保存文件的位置

using (FileStream imageStream = new FileStream(saveDirectory, FileMode.Create)){

Resolution resolution = new Resolution(300);

JpegDevice jpegDevice = new JpegDevice(resolution, 100);//將第一頁保存為圖片

jpegDevice.Process(pdfDocument.Pages[1], imageStream);

imageStream.Close();

}

1.Aspose.Cells實現將excel轉換為圖片功能,獲取excel[Sheet1] ,通過aspose讀取保存為圖片

Workbook workbook = new Workbook(filestream);

Worksheet sheet = workbook.Worksheets[0];

sheet.PageSetup.LeftMargin = 0;

sheet.PageSetup.RightMargin = 0;

sheet.PageSetup.BottomMargin = 0;

sheet.PageSetup.TopMargin = 0;

ImageOrPrintOptions imgOptions = new ImageOrPrintOptions();

imgOptions.ImageFormat = ImageFormat.Jpeg;

imgOptions.OnePagePerSheet = true;

imgOptions.PrintingPage = PrintingPageType.IgnoreBlank;

SheetRender sr = new SheetRender(sheet, imgOptions);

sr.ToImage(0,saveDirectory);

3.Aspose.Words實現將word轉換為圖片功能,獲取word文件流 通過aspose讀取保存為圖片

Aspose.Words.Document doc = new Aspose.Words.Document(filestream);

doc.Save(saveDirectory,Aspose.Words.SaveFormat.Jpeg);

是不是很方便,只要把上傳文件時文件流獲取然後通過Aspose即可保存為圖片,當然Aspose擁有更強大的功能,這裡只是用它來保存了一張縮略圖,它可以將相應的文件相互靈活的轉換,不過Aspose的dll是付費的 破解版只能轉換3頁內容,不過做個首頁截圖功能破解版的已經夠了!

原文鏈接:http://mp.weixin.qq.com/s?__biz=MzIzNTE2OTk1MA==&mid=402768932&idx=1&sn=0f091d8a9ebf006f5e5d128304d06e63#rd
相關資源獲取或其他疑問可在掃碼添加CodeL公眾號留言。(微信公眾號: codelir)

微信掃一掃獲取更多開發資源:

  1. 上一頁:
  2. 下一頁: