Главная страница
    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
14-27174
arbiter
2002-08-13 22:30
2002.09.09
Что лучше для FTP


1-26947
KIR
2002-08-23 13:28
2002.09.09
Как правильно использовать функцию DrawTextEx?


3-26890
Sword
2002-08-19 17:51
2002.09.09
Сумма значений по одному полю


1-27007
Seldon
2002-08-29 23:08
2002.09.09
Admin?


1-27031
Smok_er
2002-08-27 16:27
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский