0

我创建了一个 CMS 以将所有图像上传到一个文件夹,使用 ed 我的所有图像到一个文件夹,使用,

file.SaveAs(Server.MapPath("../images/") + advertID.ToString + "_" + i.ToString + fileExt)

现在,所有图像都已保存,我忘了它创建缩略图。:(

我需要一次阅读所有图像并创建缩略图,

myimg = System.Drawing.Image.FromFile(imgFileName)
myimg = myimg.GetThumbnailImage(154, 94, Nothing, IntPtr.Zero)
myimg.Save(Server.MapPath("../Content/") + "Thumb_" + imgFileName, myimg.RawFormat)

我需要它来快速运行。我似乎不知道如何一一阅读这些图像名称。

提前致谢。

4

1 回答 1

1

稍作修改的版本

public void createThumbnails(string sourceDir) 
{
    //Process the list of files found in the directory. 
    string [] fileEntries = Directory.GetFiles(sourceDir);

    foreach(string fileName in fileEntries)
    {
        //Do resizing here.
        myimg = System.Drawing.Image.FromFile(fileName);
        myimg = myimg.GetThumbnailImage(154, 94, Nothing, IntPtr.Zero);
        myimg.Save(Server.MapPath("../Content/") + "Thumb_" + fileName, myimg.RawFormat);
    }
}

像这样调用:

createThumbnails("C:\Path\To\Images");

*编辑:使用转换器工具的 VB.NET 等效项:

Public Sub createThumbnails(ByVal sourceDir As String)
    Dim fileEntries As String() = Directory.GetFiles(sourceDir)

    For Each fileName As String In fileEntries
        myimg = System.Drawing.Image.FromFile(fileName)
        myimg = myimg.GetThumbnailImage(154, 94, [Nothing], IntPtr.Zero)
        myimg.Save((Server.MapPath("../Content/") & "Thumb_") + fileName, myimg.RawFormat)
    Next
End Sub
于 2009-08-28T03:27:41.333 回答