Вниз
Скачать: CL | DM;

Потеря качества при уменьшении иображения   Найти похожие ветки 

← →
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 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.021 c
1-1120823762
Ольга
2005-07-08 15:56
2005.07.25
Количество Childs у выбранного TreeView.Node


1-1120663517
Vasya.ru
2005-07-06 19:25
2005.07.25
Вопрос мой закрыли, ответа не получил


1-1120577831
Alex77777
2005-07-05 19:37
2005.07.25
Как читать файлы xml


1-1120744314
Apachi
2005-07-07 17:51
2005.07.25
sMDIForm и sMDIChild


6-1113409952
Ландграф Павел
2005-04-13 20:32
2005.07.25
idFTP одновременная запись в файл




   Наверх