Спасибо за ответы, На самом деле я не озадачен рисовать 1024 * 768 пикселей медленнее, чем 100 * 100 пикселей ... Это так просто логика .. Что заставило меня озадачило, что алгоритм интерполяции DrawImage может быть очень медленный, в то время как существует много лучшего алгоритма, и его декодер, кажется, может декодировать из jpg с определенным разрешением, это действительно здорово, я когда-то искал, но не нашел бесплатного lib для этого ...GDI + Удивительная скорость декодирования и ужасная скорость вытягивания!
Это действительно странно! Я добавлю следующий код в метод Paint. c: \ 1.jpg - файл 5M jpg, около 4000 * 3000
// ----------------------------- ---------------------------------
HDC hdc = pDC->GetSafeHdc();
bitmap = Bitmap::FromFile(L"c:\\1.jpg",true);
Graphics graphics(hdc);
graphics.SetInterpolationMode(InterpolationModeNearestNeighbor);
graphics.DrawImage(bitmap,0,0,200,200);
Вышеупомянутое очень быстро! даже в режиме реального времени! Я не думаю, что декодировать 5-мегапиксельный JPG может быть так быстро!
// -------------------------------------------- ------------------
HDC hdc = pDC->GetSafeHdc();
bitmap = Bitmap::FromFile(L"c:\\1.jpg",true);
Graphics graphics(hdc);
graphics.SetInterpolationMode(InterpolationModeNearestNeighbor);
graphics.DrawImage(bitmap,0,0,2000,2000);
Приведенный выше код становится очень медленно
// ------------- -------------------------------------------------
Если я добавляю Bitmap = Bitmap :: FromFile (L "c: \ 1.jpg", true); // в конструкции
оставить
Graphics graphics(hdc);
graphics.SetInterpolationMode(InterpolationModeNearestNeighbor);
graphics.DrawImage(bitmap,0,0,2000,2000);
в методе OnPaint, код еще немного медленно ~~~
// ------------- -------------------------------------------------- ---
Сравнения с декодированием DrawImage процесс очень медленно ...
Как и почему они сделали это? Microsoft заплатила мужчинам, беря на себя ответственность за двойную зарплату декодера, чем мужчины, которые берут на себя ответственность за рисование рисунка?
Спасибо! Это помогает! – user25749 2008-11-08 01:06:22