У меня есть код, который рисует мои собственные прямоугольные кнопки на основе исходного растрового изображения.Устранение проблемы с StretchBlt()
Большую часть времени кнопки назначения больше, чем исходное растровое изображение, а StretchBlt отлично работает. Однако, когда место назначения меньше исходного изображения, StretchBlt отказывается заполнить всю область назначения.
Я знаю, что StretchBlt невелик по качеству, когда дело доходит до уменьшения изображений, но я не слишком обеспокоен этим. Я просто не хочу отсутствующих пикселей.
Здесь связь с исходным изображением в верхней части и назначения в нижней части:
link text Обратите внимание, я на самом деле сокращение части исходного изображения в пункт назначения. Я не уменьшаю весь снимок. Так, например, я копирую размер углов для размера с помощью BitBlt(), затем я растягиваю (сквошу) данные горизонтального пикселя между углами от исходного изображения до конечного DC.
В моих координатах источника и назначения нет ошибок. Если я перейду от SRCCOPY к WHITENESS, вся область заполняется белым цветом, как вы ожидали. Нет серой полосы, где пиксели не копируются, как вы видите в изображении Broken.bmp выше.
У кого-нибудь была эта проблема раньше, и если да, может кто-нибудь предложить решение?
Cheers