Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2002.09.09;
Скачать: [xml.tar.bz2];

Вниз

Увеличение картинки без существенной потери качества   Найти похожие ветки 

 
Novice 2   (2002-05-08 00:20) [0]

Не подскажет ли всезнающий All, как увеличить картинку без существенной потери качества? Компонент, пример, алгоритм?


 
VID   (2002-05-08 00:37) [1]

Давно на этом форуме я нашёл такой код:

function BitDouble(Sour:TBitMap):TBitMap;
function Mix(Col1, Col2:TColor):TColor;
begin
Result:=RGB(
(GetRValue(Col1)+GetRValue(Col2)) div 2,
(GetGValue(Col1)+GetGValue(Col2)) div 2,
(GetBValue(Col1)+GetBValue(Col2)) div 2);
end;
var
x, y:word;
begin
Result:=TBitMap.Create;
Result.Height:=Sour.Height*2-1;
Result.Width:=Sour.Width*2-1;
for y:=0 to Sour.Height do
for x:=0 to Sour.Width do begin
Result.Canvas.Pixels[x*2,y*2]:=Sour.Canvas.Pixels[x,y];
Result.Canvas.Pixels[x*2+1,y*2]:=Mix(Sour.Canvas.Pixels[x,y], Sour.Canvas.Pixels[x+1,y]);
end;
for x:=0 to Result.Width do
for y:=0 to Sour.Height do
Result.Canvas.Pixels[x,y*2+1]:=Mix(Result.Canvas.Pixels[x,y*2], Result.Canvas.Pixels[x,y*2+2]);
end;

Автор гарантировал увеличение BitMap в 2 раза без потери качества. Я функцию не проверял, так что остаётся верить словам автора. Правда автора я не помню...


 
Mirovodin   (2002-05-08 20:27) [2]

У меня на DelphiGFX в разделе Lib"s возьми Bitmap Resampler


 
Novice 2   (2002-05-09 08:41) [3]

> VID

Пример рабочий, однако работает очень долго (порядка нескольких секунд). Может для оптимизации надо настроить Delphi проект? Я имею в виду файл с расширением dof.

> Mirovodin

Спасибо посмотрю.


 
Novice 2   (2002-05-11 08:31) [4]

Вопрос еще в силе.


 
hooch   (2002-05-11 09:29) [5]

Есть очень классная библиотечка FastBMP называется
http://gfody.com


 
Antipapa   (2002-05-11 13:38) [6]

На www.delphi-jedi.org смотри JCL - там есть это и очень качественно.


 
Novice 2   (2002-05-11 15:29) [7]

Спасибо, друзья!



Страницы: 1 вся ветка

Форум: "Media";
Текущий архив: 2002.09.09;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.007 c
1-26994
Yasha
2002-08-29 12:57
2002.09.09
Слайд-шоу


4-27280
LordOfSilence
2002-07-19 13:02
2002.09.09
Изменить заголовок окна после ShellExecute


1-27002
lipskiy
2002-08-27 10:59
2002.09.09
Это у меня глюки, или действительно глюки? (TToolBar и сепаратор)


14-27232
Димон1
2002-08-15 20:39
2002.09.09
Test


4-27284
hovl
2002-07-19 20:46
2002.09.09
Перехват обращения к файлу системы





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский