如何获取所选文件的缩略图并在PictureBox中显示
本文关键字:略图 PictureBox 显示 文件 何获取 获取 | 更新日期: 2023-09-27 18:21:00
我正在向Form
中的一组Panels
动态添加一组文件。
当我显示OpenFileDialog
时,我允许用户选择一个文件。当用户选择一个文件时,我想:
a) If the file is an image, display a thumbnail of that image in the Panel, and
b) If the file is _not_ an image, display its File Icon in the Panel.
我也很难理解如何区分Image
文件和normal file
(而不是对所有不同的图像类型执行大量的IF
语句。你会这样做吗?)
我们该怎么做?我已经搜索过了,但没有找到任何有助于解释如何处理这一问题的东西。
对于b),我认为不能仅仅通过扩展名来区分文件的类型。这确实会使清单太长。有了图像文件,我可以让自己享受性能"奢侈",只需为图像引擎(在我的情况下是FreeImage)提供任何信息,然后捕捉异常。
如何获得缩略图,例如可以在这里阅读
为了检查文件扩展名,您只需创建图像文件扩展名的List<string>
,并编写以下内容:
List<string> extensions = ....;
if(extensions.Conatins(Path.GetExtension(_yourOpenFileDialog.FileName)))
编辑
虽然要检查你的文件是否是有效的图像,你可以检查它是否是已知的阅读器,或者只是尝试类似于Image.FromFile(....).RawFormat
的东西,如果文件不是图像,它会抛出异常,就像Alexander建议的