2013-02-09 2 views
0

사용자가 선택한 jpg 파일로 양식의 배경 무늬를 프로그래밍 방식으로 지정해야합니다. 새로운 Bitmap에서이 작업을 수행했지만 jpeg 파일을 읽는 경우에만 읽기 전용이됩니다.프로그래밍 방식으로 양식을 변경하는 다른 방법

RAM jpeg 파일로로드하여 배경 화면에 사용할 수 있습니까? 또는 jpeg 파일을 프로젝트 리소스에 추가하고 리소스를 사용 하시겠습니까? 내 아주 아주 나쁜 영어 :(

안부에 대한

죄송합니다

답변

2

는이 MemoryStream 사용합니다.

MemoryStream ms = new MemoryStream(File.ReadAllBytes(pathToImageFile)); 
this.BackgroundImage = Image.FromStream(ms); ; 
+0

감사합니다. – user1849976

0

GDI는 + 파일에 그림을 그리 듯 파일 잠금을 방지하는 가장 간단한 방법은 Bitmap (Image) 생성자를 사용하여 비트 맵의 ​​전체 복사본을 만들려면 다음과 같이하십시오.

을 사용하면 문을 사용하면 파일 잠금이 해제됩니다. 그리고 Dispose() 호출은 오래된 비트 맵이 빠르게 파괴된다는 것을 보장합니다. 이는 종종 32 비트 운영 체제에서 큰 비트 맵을 사용하여 OOM을 치고 있기 때문에 중요합니다.

+0

이 방법과 이전 방법의 차이점은 무엇입니까? – user1849976

+0

두 개의 큰 것. 먼저 비트 맵은 비디오 어댑터의 픽셀 형식과 호환되도록 보장되므로 빠르게 렌더링됩니다. 둘째, 관리되지 않는 리소스를 처리하는 것이 훨씬 쉽습니다. MemoryStream을 사용할 때 비트 맵이 더 이상 사용되지 않을 때까지 주위를 지켜야합니다. –

관련 문제