2009-11-16 2 views
1

aspx 페이지에는 이미지를 "먹이"로 대기하는 <image> 컨트롤이 있습니다. 해당 페이지의 코드 숨김에서 (단순히 거기에 있습니다.) 어떻게 이미지를 나타내는 바이트 배열인지는 관련이 없습니다 ( ). 나는 그 배열에 표현 된 그림을 표현하기 위해 이미지 컨트롤 (또는 당신이 제안한 대안)을 원한다. 방법? 코드 예제?내 이전의 "bytearray asp.net을 이미지로 만들기"질문

+2

더 적합한 제목을 선택하고 싶을 수 있습니다. – Heinzi

답변

0

바이트 배열을 디스크 나 데이터베이스에 씁니다. 이미지 컨트롤의 소스에서 HTTP 처리기 (your "bytearray to image asp.net" question에 대한 응답 참조)를 파일 또는 데이터베이스 행을 검색 할 수있는 정보가 들어있는 쿼리 문자열과 함께 넣습니다.

+0

그래서 항상 이미지에 "먹이를 먹는"링크가 있어야합니다? – user181218

+0

예, HTML의 태그가 작동하는 방식입니다. – Heinzi

+0

이미지를 페이지에 임베드 할 수 없습니다. 브라우저는 항상 두 개의 별도 요청을 보냅니다. – Pete

1

당신은 canvas 태그를 사용할 수 있으며, 사용자가 데이터를 통해 이미지를 삽입에 대한 섹션에서 볼 수있는이 페이지에서 http://code.google.com/p/explorercanvas/

에서, 당신은 excanvas 프로젝트를 볼 수는 크로스 브라우저로 : 홈페이지 , 그게 당신이 찾고있는 것일 수도 있습니다. https://developer.mozilla.org/En/Canvas_tutorial/Using_images

+0

좋은 아이디어. 그러나 데이터 URL은 Internet Explorer <= 7.에서 지원되지 않습니다. IE8에서 지원하지만 최대 32KB의 데이터에 대해서만 http://en.wikipedia.org/wiki/Data:_URL을 참조하십시오. – Heinzi

+0

@Heinzi - Most GIF는 32k 미만이어야합니다. 그러나 나는 원하는 것처럼 보이는 대안을 보여 주려고했습니다. 그것은 완벽하지는 않지만 그의 필요를 충족시킬 수 있습니다. –

+0

@James : 물론, 이해합니다. +1, 그런데, 나는 데이터를 완전히 잊었 기 때문에 : url. :-) – Heinzi

0

컨트롤은 실제로 이미지를 모두 렌더링 할 수 없습니다. 컨트롤은 일반적으로 페이지를 구성하는 HTML에 삽입되는 텍스트를 렌더링합니다.

바이트 배열에서 이미지를 동적으로 생성하려면 대신 HttpHandler를 사용해야합니다. Handler는 Response.Write()를 사용하여 출력 스트림에 바이트를 쓰고 콘텐츠 형식을 적절한 MIME 형식으로 설정할 수 있습니다.

보통 입니다. 이미지는 처리기로 전달되는 쿼리 문자열의 인수를 기반으로 생성합니다.

일반 핸들러 (.ashx 파일)를 사용하면이 작업을 쉽게 수행 할 수 있습니다.