2016-12-22 97 views
1

我在電子郵件的正文中嵌入圖像,並且工作正常,但圖像是全尺寸的,佔用了大部分電子郵件,所以我想調整圖像大小。調整嵌入到電子郵件中的圖像的大小

<div runat="server" id="dvEmailLogo"> 
    <asp:Image runat="server" ID="EmailLogo" /> 
</div> 

後面的代碼:

EmailLogo.ImageUrl = ConfigurationManager.AppSettings["LogoFileFolder"] + Company.Current.CompCode + "\\" + Company.Current.Logo + ""; 

    Attachment inlineLogo = new Attachment(EmailLogo.ImageUrl); 
    mailMsg.Attachments.Add(inlineLogo); 
    string contentID = "Image"; 
    inlineLogo.ContentId = contentID; 

    //To make the image display as inline and not as attachment 
    inlineLogo.ContentDisposition.Inline = true; 
    inlineLogo.ContentDisposition.DispositionType = DispositionTypeNames.Inline; 

    //To embed image in email 
    mailMsg.Body = "<htm><body> <img src=\"cid:" + contentID + "\"> </body></html>"; 

我嘗試添加寬度和高度的網址:

EmailLogo.ImageUrl = ConfigurationManager.AppSettings["LogoFileFolder"] + Company.Current.CompCode + "\\" + Company.Current.Logo + @"&width=200&height=200"; 

但是這將導致錯誤信息:System.IO.FileNotFoundException:找不到文件

我也試過把寬度的高度添加到div dvEmailLogo但是沒有cha nge的大小

+0

您可以使用CSS伸展在DIV http://stackoverflow.com/questions/1891857/how-do-you-stretch-an-image-to-fill-a-div-while-keeping圖像-the-images-aspect-rat –

+1

@Alexey CSS不適用於許多電子郵件客戶端。 OP使用'Path.Combine'來制定路徑並解決* FileNotFound *使用工具:Process Monitor。這將顯示文件試圖找到的位置,以便您可以看到必須更改的內容。 –

+0

您可以在html''中設置圖片的寬度。那是在磁盤上找到圖像之後。 – VDWWD

回答

1

爲什麼不調整圖像的html代碼?

mailMsg.Body = "<htm><body> <img height="200" width="200" src=\"cid:" + contentID + "\"> </body></html>"; 
相關問題