ich den folgenden Code in meiner Website verwende, für Thumbnail-Erstellung:erstellen Thumbnail in C# .NET von Breite zu definieren
string furl = "~/images/thumbs/" + matchString;
lBlogThumb.ImageUrl = GetThumbnailView(furl, 200, 200);
private string GetThumbnailView(string originalImagePath, int height, int width)
{
//Consider Image is stored at path like "ProductImage\\Product1.jpg"
//Now we have created one another folder ProductThumbnail to store thumbnail image of product.
//So let name of image be same, just change the FolderName while storing image.
string thumbnailImagePath = originalImagePath.Replace("thumbs", "thumbs2");
//If thumbnail Image is not available, generate it.
if (!System.IO.File.Exists(Server.MapPath(thumbnailImagePath)))
{
System.Drawing.Image imThumbnailImage;
System.Drawing.Image OriginalImage = System.Drawing.Image.FromFile(Server.MapPath(originalImagePath));
imThumbnailImage = OriginalImage.GetThumbnailImage(width, height,
new System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback), IntPtr.Zero);
imThumbnailImage.Save(Server.MapPath(thumbnailImagePath), System.Drawing.Imaging.ImageFormat.Jpeg);
imThumbnailImage.Dispose();
OriginalImage.Dispose();
}
return thumbnailImagePath;
}
public bool ThumbnailCallback() { return false; }
Ich mag diesen Code ändern, und in der Lage sein, eine Miniaturansicht definieren Breite zu erstellen NUR. Was ich im Sinn habe, ist eigentlich etwas wie das Zuschneiden/Ändern der Bildgröße, das Verwenden einer statischen Breite, das Beibehalten des Verhältnisses. Ist das möglich;
Ist das, was Sie wollen? newHeight = oldHeight * newWidth/oldWidth, nicht sicher, was du meinst, wenn du sagst, dass du das Bild zuschneiden willst - willst du es zuschneiden UND die Größe ändern? –
danke für deine hilfe – zekia
idk warum aber das gab mir eine "aus dem speicher" err .. gibt es jemanden, der eine ausnahme dafür setzen kann? Ich weiß nicht wirklich, wie C# Speicher verarbeitet. –