Форум: "Основная";
Текущий архив: 2005.07.25;
Скачать: [xml.tar.bz2];
ВнизПотеря качества при уменьшении иображения Найти похожие ветки
← →
Qwertyk © (2005-07-08 19:18) [0]Здравствуйте! Вот такая проблема: есть некая картинка размером 1500 на 1000 (к примеру). Мне нужно ее уменьшить на половину и вставить в один из canvas"ов. Так проблема в том что при уменьшении картинки получается очень плохое изображение(качество). Как быть?
Bmp2.LoadFromFile("c:\1.bmp");
Bmp.Height:=666;
Bmp.Width:=212;
Rect1.Left:=0;
Rect1.Top:=0;
Rect1.Right:=212;
Rect1.Bottom:=666;
bmp.Canvas.StretchDraw(rect1,bmp2);
bmp.SaveToFile("c:\2.bmp");
Делал примерно так. В итоге получался файл 2.bmp с плохи качеством. Как этого можно избежать?
← →
palva © (2005-07-08 19:41) [1]Надо уменьшать хорошим интерполяционным алгоритмом алгоритмом. Наверняка и компоненты написаны. Поищи по словам bicubic resample delphi component
← →
Qwertyk © (2005-07-08 20:15) [2]Спасибо.
Опять вопрос вот уменьшил я размер изображения, далее вставляю его в канву, но при печате качество изображения не очень (не так к примеру если печатать из ворда)
← →
Eraser © (2005-07-08 21:40) [3]Qwertyk © (08.07.05 20:15) [2]
Если изображение растровое, то не должно быть разницы между вордом.
Что на картинке?
← →
–=ХР=– (2005-07-08 21:57) [4]Если изображение растровое, то не должно быть разницы между вордом.
Word экстраполирует растровые изображения при масштабировании, в случае несоответствия DPI между оригиналом растра и устройством вывода.
← →
Eraser © (2005-07-08 22:14) [5]–=ХР=– (08.07.05 21:57) [4]
Ага, так я понял ворд экстраполирует картинку именно до DPI, независимо от разрешения?
Qwertyk ©
Ну значит ищи такие алгоритмы, и изобретай велосипед с распечаткой )
← →
–=ХР=– (2005-07-08 22:33) [6]Ага, так я понял ворд экстраполирует картинку именно до DPI, независимо от разрешения?
Вы, может, и поняли, только я Ваш вопрос что-то не понял. Sorry. :-/
MS Word производит сглаживание для получения наиболее оптимального изображения на конкретно взятом устройстве вывода. Что конкретно подразумевают разрабочики MS под словом "оптимальность" я не знаю, но получается у них неплохо.
Решение в даном случае простое: использовать вместо физических пикселей (точек) логические пиксели. Плюс, соответствующие способы конвертирования из одних логических координат в другие. Не только координаты векторных примитивов, но и их атрибуты, такие как толщина линии, например. Не только векторные изображения, но и растровые.
И еще: оптимальное качество получается тогда, когда DPI оригинала и устройства вывода совпадают. В любом случае, при несовпадении DPI оригинала и устройства вывода, будет ухудшение качества изображения.
← →
Eraser © (2005-07-08 23:09) [7]Решение в даном случае простое: использовать вместо физических пикселей (точек) логические пиксели.
Именно это я и имел ввиду )
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.07.25;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.011 c