레이아웃 :추가 공백
나는 문서를 스캔하기 위해 타사 컨트롤을 사용하고 있습니다. 이미지 (주로 이미지에 주석을 추가하는 데 사용됨)를 스캔 할 때 발생하는 이벤트가 있습니다. 이 이벤트는 .PAhDC이라는 하나의 속성 만 제공합니다. 이 속성은 파일에 기록되기 전에 이미지를 저장하는 DC에 대한 핸들입니다. 따라서 이미지가 파일에 기록되기 전에 이미지를 변경할 수 있습니다.
예상 결과 :
나는 단순히 1/4 인치를 추가 할 이미지의 매우 상단에 공백 라인 (100 개 픽셀을 말할 수) 것입니다. 원본 이미지가 200x200 (WxH)이면 내 최종 이미지는 200x300이어야합니다.
질문과 다른 생각 :
어떻게 만이 DC가 처리 할 것 알고로 기존 이미지를 변경할 수 있습니까? 다음과 같은 일을 할 생각이었습니다 ...
- 새 DC를 만듭니다.
- 원본 이미지보다 100 픽셀 큰 새 비트 맵을 만듭니다.
- 새 DC에서 새 비트 맵을 사용하십시오.
- 원본 이미지를 새 비트 맵 (맨 위부터 시작하여 100 픽셀)으로 복사합니다.
- 그런 다음 SelectObject와 같은 것을 사용하여 원래 hDC의 이전 비트 맵을 새 것으로 교체 한 다음 이전 비트 맵 객체를 삭제합니다.
참고 : 가능한 한 MANAGED CODE (관리 코드)로 수행하고 싶습니다. 생각할 수있는 유일한 방법은 SelectObject()를 사용하는 것이지만 물론 관리되지 않는 코드입니다./
나는 그것을 받아 들일 수 없었습니다. DC에서 비트 맵에 무엇을 할지라도 (예 : Deanna가 바꾸거나 바꾸지 않음) "새로운"비트 맵이 부모 함수에서 무시되기 때문에 변경 사항이 무시됩니다. ...또는 그래서 비트 맵을 바꿀 때 적합하다고 생각하고 있습니다. –