2009-08-28 45 views
0

我已创建一个CMS使用使用ED我的所有影像复制到文件夹中的所有图片上传到一个文件夹中创建可用图像的thambnails,创建功能的文件夹

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) 

我需要这个运作快。我不似乎知道如何阅读这些图像的名字一个接一个。

在此先感谢

+0

你有这个编译版本的源代码? – 2010-01-19 12:54:54

回答

1

this稍作修改的版本:

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相当于converter工具:

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 
+0

就是这样。 – 2009-08-28 03:55:27

+0

我得到这个错误(我想在VB.net中使用它) 编译器错误消息:BC30369:无法从共享方法或共享成员初始值设定项中引用一个类的实例成员,而没有该类的显式实例。 源错误: 第25行:myimg.Save(使用Server.Mappath( “/图片/”)+ “Thumb_” +文件名,myimg.RawFormat) 源文件:G:\ wwwroot的\ srilancars \ createThumbs.aspx。 vb行:25 – Kush 2009-08-28 04:07:31

+0

错误是在谈论“服务器”< - – Kush 2009-08-28 04:08:08