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

Вниз

Thumbnails   Найти похожие ветки 

 
Zikmu   (2006-05-09 21:42) [0]

Добрый день.
Помогите мне, пожалуйста с такой ситуацией:
У меня есть программа, которая должна изменять размеры изображения, ну, скажем, которое в переменной JImage1:

                 JImage1 := TJPEGImage.Create;
                 JImage1.LoadFromFile("Image1");
                 ...
                 JImage1.Free;



Мне нужно уменьшить это изображение до размеров, которые хранятся в переменных H и W и сохранить. Пробовал по-разному, но на выходе создаются файлы нужного размера, но пустые (белые). То же самое и с BMP и даже с GIF (компонент delgif). Возможно, существует какой-то лёгкий способ это сделать, а я и ен знаю... Подскажите, кто может.
Заранее благодарен.


 
Мефисто   (2006-05-09 21:45) [1]

В конфу Media загляни


 
Пусик ©   (2006-05-09 21:46) [2]

И ты думаешь, что из того обрывка кода, который ты привел, можно что-то определить?

procedure StretchJPG(const FilePathSrc,FilePathDest: String; aW,aH: Integer);
var
Src, Dest: TBitmap;
j: TJPEGImage;
Degree: Double;
begin
Src:= TBitmap.Create;
Dest:= TBitmap.Create;
j:= TJPEGImage.Create;

try
  j.LoadFromFile(FilePathSrc);
  Src.Assign(j);
  Dest.Assign(Src);
  if (Dest.Width<=aW) and (Dest.Height<=aH) then Exit;
  Degree := Src.Height/aH;
  if Trunc(Src.Width/Degree)>aW then Degree := Src.Width/aW;

  Dest.Width:= Trunc(Src.Width/Degree);
  Dest.Height:= Trunc(Src.Height/Degree);

  SetStretchBltMode(Dest.Canvas.Handle, HALFTONE);
  StretchBlt(Dest.Canvas.Handle, 0, 0, Dest.Width, Dest.Height,
             Src.Canvas.Handle, 0, 0,  Src.Width, Src.Height, SRCCOPY);
  j.Assign(Dest);
  j.SaveToFile(FilePathDest);
finally
  Src.Free;
  Dest.Free;
  j.Free;
end;
end;



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

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

Наверх




Память: 0.44 MB
Время: 0.01 c
1-1145272894
trank
2006-04-17 15:21
2006.05.28
Метод TCanvas.Draw меняет хэндлы


15-1146723086
dolmat
2006-05-04 10:11
2006.05.28
Система не ставится


2-1147068883
mctarik
2006-05-08 10:14
2006.05.28
Список служебных слов в Delphi и функция Подсветки синтаксиса!


4-1141980849
Альберт
2006-03-10 11:54
2006.05.28
Канва и прочие премудрости


1-1145425737
K_VAL
2006-04-19 09:48
2006.05.28
Восстановить иконку проекта





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