2013-08-21 3 views
0

양식 Image.aspx로 작업 중이며 이미지를 업로드하고 크기를 조정 한 다음 새 창에 표시하고 싶습니다. 여기이미지를 업로드하고 크기를 조정하여 새 창에 표시하고 싶습니다.

다음

나는 이미지를 업로드하고,

UploadPath = Server.MapPath("../BrandPic/" + cmbImages.SelectedValue); 
FileName = cmbImages.SelectedValue; 
Bitmap OriginalBM = new Bitmap(UploadPath); 

나는 그것을 여기

int NewWidth = 1024; 
int newHeight = 768; 
Size newSize = new Size(NewWidth, newHeight); 
Bitmap ResizedBM = new Bitmap(OriginalBM, newSize); 

크기를 조정하고 나는 그것을 여기

HttpContext.Current.Session["Pic"] = ResizedBM; 

이를 엽니 다 내 소스 코드를 통과하고 이미지를 새 창에서

<a href='<%=Convert.ToString(HttpContext.Current.Session["Pic"])%>' rel="lightbox" > 

그러나 오류가 발생했습니다. URL을 확인하십시오. 이 문제를 해결할 수있는 아이디어가 있습니까?

+0

에서 브라우저

대한 추가 정보로 이미지 출력을 이미지 크기를 조정 것'Convert.ToString()가'마술 이미지 URL에'Bitmap' 인스턴스를 변환합니다. 어떻게 될 것으로 기대하고 있습니까? –

+0

오류가 발생하면 그 오류가 무엇 인지도 알려야합니다. –

답변

1

ResizedBMBitmap 변수이며, html에서 참조 할 수있는 파일의 경로가 아닙니다. 원하는대로하려면 파일로 저장 한 다음 href에 저장 한 파일을 참조해야합니다.

이미지 ID를 전달할 수있는 resizedImage.ashx와 같은 제네릭 처리기를 사용할 수 있습니다. 그렇다면 귀하의 링크는 <a href='resizedImage.ashx?id=[your image id]' rel='lightbox'>link text</a>입니다. 즉, 일반적인 핸들러 당신이 기다리고있어 MVC3 generic handler (.ashx) for Images resizing (Need clean URL)

+0

나는이 작업을 시도했지만 수천 개의 이미지가 있으므로 많은 공간이 필요합니다. 실제로 그것을 저장하지 않고 Bitmap 변수의 이미지를 표시하려고합니다. –

+0

원할 수도 있지만 문제가 발생할 수 있습니다. –

+0

이미지의 크기를 조정할 때만 비트 맵을 사용하고 있습니다. 크기를 조정하고 하이퍼 링크를 통해 표시하는 다른 간단한 솔루션이 있습니까? –

관련 문제