대용량 늘이기 함께 BUG: StretchBlt()/StretchDIBits() 실패

기술 자료 번역 기술 자료 번역
기술 자료: 111865 - 이 문서가 적용되는 제품 보기.
3.00 3.10 WINDOWS kbprg kbbuglist
모두 확대 | 모두 축소

현상

늘이기 요소 큰 경우, 예를 들어, 한 아주 작은 에서 큰 높이를 늘려서 때 StretchDIBits()StretchBlt() 있습니다 영 (0) 돌아가서 아무 것도 표시하지 않습니다. 작은 늘이기 동일한 비트맵은 올바르게 표시됩니다.

원인

GDI 이러한 호출을 시뮬레이션하는 합니다 있으므로 대부분의 디스플레이 드라이버는 자체 StretchBlt() 또는 StretchDIBits() 구현하지 마십시오. 64 K 제한되는 임시 작업 버퍼를 할당하는 GDI 시뮬레이션 일부가 포함됩니다. 다음 작업 버퍼 크기가 64 K 커야 계산되는 경우 64 K 때까지 원본 및 대상 사각형의 높이를 양분했습니다 있습니다. 64 K 미만으로 버퍼를 얻을 수 (2) 두 높이 나누려면 GDI 계속 합니다 원본 또는 대상 높이 결국 한 스캐닝선의 접근할 수 있는 문제입니다. 이 시점에서 스캐닝선의 하위 문서로 나눌 수 없기 때문에 호출이 실패합니다.

StretchBlt()StretchDIBits() 무제한 늘이기 제공하도록 설계되지 않았습니다. 그러나 이러한 설계상의 한계를 보다 조금 더 중간에 실패할 수 있습니다.

해결 방법

StretchBlt() 또는 StretchDIBits() 있는 큰 늘이기 실패하면 응용 프로그램이 있습니다 소스 비트맵을 위로 나누기, 조각을 개별적으로 늘이기 및 올바르게 한 번 늘어나는 위치를. 또 다른 방법은 작은 늘이기 수행할 수 있습니다. 없음 수식을 정확히 어떤 비트맵 어떤 늘이기 크기로 실패합니다 확인할 수 있습니다.

현재 상태

Microsoft는 이 문서의 시작 부분에 나열한 제품에서 문제를 확인했습니다.

추가 정보

문제를 재현하는 데 약 2048 x 16 픽셀인 비트맵을 만듭니다. 그런 다음 Windows 3.1 SDK에서 DIBVIEW 샘플 비트맵을 표시하십시오. 비트맵이 클라이언트 창의 크기에 따라 늘일 수 있도록 창에 늘이기 DIBVIEW의 옵션 메뉴에서 선택하십시오. 높이를 약 200 개 이상의 픽셀 경우 비트맵이 표시되지 않습니다.

속성

기술 자료: 111865 - 마지막 검토: 2005년 3월 7일 월요일 - 수정: 2.1
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft Windows Software Development Kit 3.0
  • Microsoft Windows Software Development Kit 3.1
키워드:?
kbmt kbbug kbpending KB111865 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

피드백 보내기

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com