| 
			| 
					
						| Demidova Aigul 
								Гость
 | 
								|  | « Ответ #30 : 13-04-2005 13:51 »  |  | 
 
 Спасибо! Я утром на работе попробую так написать. А то дома у меня делфи криво был поставлен и я его грохнула. |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| RomCom | 
								|  | « Ответ #31 : 13-04-2005 14:41 »  |  | 
 
 Вот функция подгонки размеров рисунка под TImage:
 function StretchImage1(jp:TJPEGImage;image_mp:TImage):TRect;
 var dw,dh: Single; w,h: integer;
 begin  result.Top:=0; result.Left:=0;
 w:=image_mp.Width;
 h:=image_mp.Height;
 dw:=w/jp.Width;
 dh:=h/jp.Height;
 if jp.Height*dw>h then
 begin
 result.Bottom:=h;
 result.Right:=Floor(dh*jp.Width);
 end
 else
 begin
 result.Bottom:=Floor(dw*jp.Height);
 result.Right:=w;
 end;
 end;
 
 ....
 Пример:
 var jp:TJPEGImage; r:TRect;
 jp:=TJPEGImage.Create;
 jp.LoadFromFile(...);
 r:=StretchImage1(jp,Image2);
 Image2.Canvas.StretchDraw(r,jp);
 jp.Free;
 |  
						| 
								|  |  
								|  |  Записан | 
 
 R.O.M.C.O.M.: Robotic Operational Mathematics and Ceaseless Observation Machine |  |  | 
	| 
			| 
					
						| Серж 
								Гость
 | 
								|  | « Ответ #32 : 13-04-2005 15:16 »  |  | 
 
 RomCom, спасибо за информацию. Никогда не приходило в головуиспользовать TImage.Canvas, всегда делал дополнительный битмап,
 хотя это никогда не нравилось.
 |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| Demidova Aigul 
								Гость
 | 
								|  | « Ответ #33 : 14-04-2005 05:16 »  |  | 
 
 Пыталась написать эту функцию для своего случая, но почему-то ошибка "Необъявленный идентификатор Floor". Где и как я должна его объявить? Размер TImage у меня конкретно 200x200, поэтому я не стала задавать "w" и "h".
 function TForm1.StretchImage1(jp: TJPEGImage): TRect;
 var dw,dh:Single;
 begin  Result.Top:=0; Result.Left:=0;
 dw:=200/jp.Width;
 dh:=200/jp.Height;
 if jp.Height*dw>200 then
 begin
 Result.Bottom:=200;
 Result.Right:=Floor(dh*jp.Width);
 end
 else
 begin
 Result.Bottom:=Floor(dw*jp.Height);
 Result.Right:=200;
 end;
 end;
 
 Не знаю - правильно написала функцию иди нет, но почему-то ошибка "Необъявленный идентификатор Floor". Где и как я должна его объявить?
 
 Помогите, пожалуйста!
 |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| RomCom | 
								|  | « Ответ #34 : 14-04-2005 05:35 »  |  | 
 
 Floor это математическая функция округления числа с плавоющей точкой до целого.Объяви в сроке uses библиотеку Math и все будет ОК.
 |  
						| 
								|  |  
								|  |  Записан | 
 
 R.O.M.C.O.M.: Robotic Operational Mathematics and Ceaseless Observation Machine |  |  | 
	| 
			| 
					
						| Demidova Aigul 
								Гость
 | 
								|  | « Ответ #35 : 14-04-2005 10:35 »  |  | 
 
 Ура!!! Спасибо всем! Получилось!    Вот только небольшая проблема: почему-то картинка в TImage появляется какая-то бракованная - внизу что-то черное, картинка в нижней части как будто не дорисованная.  Хотелось бы для наглядности здесь  показать как выглядит бракованная картинка, но не знаю как (и возможно ли это). Может как-то можно сделать, чтобы картинка  в TImage появилась нормальная, без брака?  Помогите, пожалуйста! Не знаю, что с этим делать!  Может картинка читается неправильно или еще что?   :? На всякий случай мой итоговый код: procedure TForm1.DBGridEh1CellClick(Column: TColumnEh);var JP:TJpegImage;
 BB:TMemoryStream;
 R:TRect;
 
 begin
 image_mapp.Visible:=True;
 
 BB:=TMemoryStream.Create;
 
 with dm.Query_path do begin
 Close;
 SQL.Clear;
 SQL.Add('SELECT id, path, InventoryID FROM map_path where InventoryID ='''+dm.Query1InventoryID.AsString+'''');
 Open;
 
 if IsEmpty then begin
 image_mapp.Visible:=false;
 ShowMessage (Картинок нет!');
 exit
 end
 else
 begin
 BB.Seek(0,soFromBeginning);
 TBlobField(dm.Query_path.FieldByName('path')).SaveToStream(BB);
 BB.Seek(0,soFromBeginning);
 jp:=TJPEGImage.Create;
 jp.LoadFromStream(BB);
 JP.DIBNeeded;
 R:=StretchImage1(JP);
 //image_mapp.Canvas.StretchDraw(R,JP);
 image_mapp.Picture.Bitmap.Assign(JP);
 jp.Free;
 end;
 end;
 end;
 
 |  
						| 
								|  |  
								| « Последнее редактирование: 13-12-2007 20:40 от Алексей1153++ » |  Записан | 
 |  |  | 
	| 
			| 
					
						| Серж 
								Гость
 | 
								|  | « Ответ #36 : 14-04-2005 12:38 »  |  | 
 
 А StretchDraw-то зачем закомментировано? |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| Demidova Aigul 
								Гость
 | 
								|  | « Ответ #37 : 15-04-2005 03:44 »  |  | 
 
 Я это закомментировала, потому что именно на эту строку выходит сообщение EInvalidOperation"Can only modify an image if it contains a bitmap". Это получается в тот момент, когда я нажимаю на одну из строк в DBGridEh: procedure TForm1.DBGridEh1CellClick(Column: TColumnEh);var JP:TJpegImage;
 BB:TMemoryStream;
 R:TRect;
 
 begin
 image_mapp.Visible:=True;
 
 BB:=TMemoryStream.Create;
 
 with dm.Query_path do begin
 Close;
 SQL.Clear;
 SQL.Add('SELECT id, path, InventoryID FROM map_path where InventoryID ='''+dm.Query1InventoryID.AsString+'''');
 Open;
 
 if IsEmpty then begin
 image_mapp.Visible:=false;
 ShowMessage ('Нет картинок!');
 exit
 end
 else
 begin
 BB.Seek(0,soFromBeginning);
 TBlobField(dm.Query_path.FieldByName('path')).SaveToStream(BB);
 BB.Seek(0,soFromBeginning);
 jp:=TJPEGImage.Create;
 jp.LoadFromStream(BB);
 JP.DIBNeeded;
 R:=StretchImage1(JP);
 image_mapp.Canvas.StretchDraw(R,JP);// здесь ругается
 image_mapp.Picture.Bitmap.Assign(JP);
 jp.Free;
 end;
 end;
 end;
 
Может в строке image_mapp.Picture.Bitmap.Assign(JP) не нужно писать Bitmap? Хотя, мне кажется, что дело не только в этом.  Что делать, чтобы программа не ругалась наimage_mapp.Canvas.StretchDraw(R,JP)  и чтобы картинки не были бракованными с чем-то черным внизу?  :?  |  
						| 
								|  |  
								| « Последнее редактирование: 13-12-2007 20:41 от Алексей1153++ » |  Записан | 
 |  |  | 
	| 
			| 
					
						| Серж 
								Гость
 | 
								|  | « Ответ #38 : 15-04-2005 07:59 »  |  | 
 
 У меня следующий кодJP:=TJPEGImage.Create;
 JP.LoadFromFile('1.jpg');
 R:=StretchImage(JP,Image1);
 image1.Canvas.StretchDraw(R,JP);
 JP.Free;
 прекрасно работает.
 StretchImage - функция, которую предложил RomCom.
 |  
						| 
								|  |  
								| « Последнее редактирование: 13-12-2007 20:42 от Алексей1153++ » |  Записан | 
 |  |  | 
	| 
			| 
					
						| Demidova Aigul 
								Гость
 | 
								|  | « Ответ #39 : 15-04-2005 15:10 »  |  | 
 
 ОК, на работе в понедельник утром попробую исправить. |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| Demidova Aigul 
								Гость
 | 
								|  | « Ответ #40 : 18-04-2005 06:20 »  |  | 
 
 Ура! С рисунками вроде разобралась! Теперь внизу не появляется что-то черное. Это, оказывается, сами рисунки были бракованными. А вот что делать с сообщением  EInvalidOperation"Can only modify an image if it contains a bitmap". Я уже писала, что это получается в тот момент, когда я нажимаю на одну из строк в DBGridEh.
 function TForm1.StretchImage1(jp: TJPEGImage): TRect;
 var dw,dh:Single;
 begin  Result.Top:=0; Result.Left:=0;
 dw:=300/jp.Width;
 dh:=300/jp.Height;
 if jp.Height*dw>300 then
 begin
 Result.Bottom:=300;
 Result.Right:=Floor(dh*jp.Width);
 end
 else
 begin
 Result.Bottom:=Floor(dw*jp.Height);
 Result.Right:=300;
 end;
 end;
 
 
 procedure TForm1.DBGridEh1CellClick(Column: TColumnEh);
 var JP:TJpegImage;
 BB:TMemoryStream;
 R:TRect;
 
 begin
 image_mapp.Visible:=True;
 
 BB:=TMemoryStream.Create;
 
 with dm.Query_path do begin
 Close;
 SQL.Clear;
 SQL.Add('SELECT id, path, InventoryID FROM map_path where InventoryID ='''+dm.Query1InventoryID.AsString+'''');
 Open;
 
 if IsEmpty then begin
 image_mapp.Visible:=false;
 ShowMessage ('Нет картинок!');
 exit
 end
 else
 begin
 BB.Seek(0,soFromBeginning);
 TBlobField(dm.Query_path.FieldByName('path')).SaveToStream(BB);
 BB.Seek(0,soFromBeginning);
 jp:=TJPEGImage.Create;
 jp.LoadFromStream(BB);
 JP.DIBNeeded;
 R:=StretchImage1(JP);
 image_mapp.Canvas.StretchDraw(R,JP);  // здесь ругается
 image_mapp.Picture.Bitmap.Assign(JP);
 jp.Free;
 end;
 end;
 end;
 
 Что делать, чтобы программа не ругалась на image_mapp.Canvas.StretchDraw(R,JP)? Все было бы просто супер, если бы это исправить! Помогите, пожалуйста, подскажите!!!!!   :?
 
 
 |  
						| 
								|  |  
								| « Последнее редактирование: 13-12-2007 20:43 от Алексей1153++ » |  Записан | 
 |  |  | 
	| 
			| 
					
						| DJ-AMIGO 
								Гость
 | 
								|  | « Ответ #41 : 28-04-2005 06:55 »  |  | 
 
 Попробуй заюзать свойство Stretch после загрузки картинки в TImage, по идее должно прокатить! |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| DJ-AMIGO 
								Гость
 | 
								|  | « Ответ #42 : 28-04-2005 07:20 »  |  | 
 
 короче сделай так!1. Смой в унитаз строчку!
 image_mapp.Canvas.StretchDraw(R,JP);  // здесь ругается
 2. После строки
 image_mapp.Picture.Bitmap.Assign(JP);
 напиши следующий код:
 Image1.Stretch:=false;
 Image1.Width:=Abs(Rect.Right-Rect.Left);
 Image1.Height:=Abs(Rect.Top-Rect.Bottom);
 Image1.Stretch:=true;
 И все! Поздравляю! Теперь можно идти пить пиво!
 |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| DJ-AMIGO 
								Гость
 | 
								|  | « Ответ #43 : 28-04-2005 07:25 »  |  | 
 
 А в твоем случае это будет выглядеть вот так:То есть вместо двух левых строк
 
 image_mapp.Canvas.StretchDraw(R,JP);  // здесь ругается
 image_mapp.Picture.Bitmap.Assign(JP);
 
 ты должна закодить
 
 with image_mapp do begin
 Stretch:=false;
 Picture.Bitmap.Assign(JP);
 Width:=Abs(R.Right-R.Left);
 Height:=Abs(R.Top-R.Bottom);
 Stretch:=true;
 end;
 
 |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| Demidova Aigul 
								Гость
 | 
								|  | « Ответ #44 : 29-04-2005 07:43 »  |  | 
 
 Ура! Получилось! Спасибо, DJ-AMIGO !      А как мне сделать, чтобы эти картинки по центру TImage стояли? А то сейчас те картинки, у которых ширина больше, находятся в верхней части TImage, а те, у которых высота больше, те в левой части.  :? |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| DJ-AMIGO 
								Гость
 | 
								|  | « Ответ #45 : 03-05-2005 08:40 »  |  | 
 
 подожди-ка! Ты что-то путаешь! У тебя картинка сейчас занимает всю площадь компонента TImage, потому что ты используешь свойство Stretch!!! Другой вопрос как расположен сам TImage в контейнере-родителя!? Так вот если ты хочешь сд елать так чтобы картинка выводилась посередине контейнера-родителя, то тебе нужно всего лишь навсего сам компонент TImage разместить посередине этого контейрнера...    Мну ДА! В общем так! А это делается следующий образом! 1. Берешь узнаешь геометрические размеры контейнера-родителя (дам ему некое имя, например, CompPar), свойства Width и Height; 2. Узнаешь геометрические размеры TImage (и ему дам некое имя, например, ImgView), только сразу после вывода картинки! Те же свойства Width и Height...  3. Ну и динамически размещаешь TImage в центре  контейнера! Короче так: ImgView.Left:=Abs((ImgView.Width mod 2)-(CompPar.Width mod 2)); ImgView.Top:=Abs((ImgView.Height mod 2)-(CompPar.Height mod 2)); И все!!!    Не ну конечно могут быть и ньюансы, но это при случае можно решить...    |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| Серж 
								Гость
 | 
								|  | « Ответ #46 : 03-05-2005 09:14 »  |  | 
 
 DJ-AMIGO, а как ты думаешь, почему не работает StretchDraw, а работает твой код?У меня работает и то, и другое.
 |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| DJ-AMIGO 
								Гость
 | 
								|  | « Ответ #47 : 03-05-2005 10:50 »  |  | 
 
 Скорее всего это из-за того, что ты используешь в качестве аргумента метода StretchDraw канвы объект класса TJPEGImage, ибо канва может хавать только картинки типа битмапов или бругих потомков класса TGraphi, а в TJPEGImage содержатся запакованные данные, которые надо сначала отконвертить: var bmp : TBitmap;      jp : TJPEGImage; begin   bmp:=TBitmap.Create;   try      jp:=TJPEGImage;     try       bmp.Assign(jp);       ;дальше юзаем bmp     finally       jp.free;     end   finally     bmp.Free;   end; end; Хотя с другой стороны TJPEGImage сам является потомком TGraphic, поэтому все должно работать окейно! Кажется я догадываюсь из-за чего это может быть!  Просто девушка что-то напутала и не совсем разобралась в сути, потому не стоит напрягаться по поводу несуществующих глюков!   |  
						| 
								|  |  
								| « Последнее редактирование: 03-05-2005 11:03 от DJ-AMIGO » |  Записан | 
 |  |  | 
	| 
			| 
					
						| Demidova Aigul 
								Гость
 | 
								|  | « Ответ #48 : 03-05-2005 11:13 »  |  | 
 
 Насчет того, что "девушка что-то напутала и не совсем разобралась в сути" - вполне возможно. Я ведь в делфи новичок, и с изображениями впервые работаю, раньше никогда не использовала TImage или что-то подобное. Так что, крутые делфисты, не осуждайте сильно.    Еще раз хотела спросить про центрирование. Контейнером-родителем у меня является панель image_panel, TImage у меня называется image_mapp.  То есть мне нужно написать  image_mapp.Left:=Abs((image_mapp.Width mod 2)-(image_panel.Width mod 2)); image_mapp.Top:=Abs((image_mapp.Height mod 2)-(image_panel.Height mod 2)); Только не знаю, куда это написать.  :? |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| DJ-AMIGO 
								Гость
 | 
								|  | « Ответ #49 : 03-05-2005 11:47 »  |  | 
 
 Мдя! Возможно я слегка перебощил!     И попытаюсь исправиться попросив прощения ! А по поводу твоего последнего вопроса, так на него я ответил еще в предыдущем сабже! Тяк вот! Пиши эти строчки сразу после того, как выводится картинка... |  
						| 
								|  |  
								| « Последнее редактирование: 13-12-2007 20:45 от Алексей1153++ » |  Записан | 
 |  |  | 
	| 
			| 
					
						| Demidova Aigul 
								Гость
 | 
								|  | « Ответ #50 : 03-05-2005 11:56 »  |  | 
 
 Да я не обиделась. Так что не за что извиняться.    А насчет того, что "Пиши эти строчки сразу после того, как выводится картинка..." - это значит после добавления картинки? |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| DJ-AMIGO 
								Гость
 | 
								|  | « Ответ #51 : 03-05-2005 12:12 »  |  | 
 
 Фуф! Как тонна с плеч!    пиши это сразу после строк: with image_mapp do begin     Stretch:=false;   Picture.Bitmap.Assign(JP);   Width:=Abs(R.Right-R.Left);   Height:=Abs(R.Top-R.Bottom);   Stretch:=true; end; |  
						| 
								|  |  
								| « Последнее редактирование: 03-05-2005 12:14 от DJ-AMIGO » |  Записан | 
 |  |  | 
	| 
			| 
					
						| Demidova Aigul 
								Гость
 | 
								|  | « Ответ #52 : 05-05-2005 10:45 »  |  | 
 
 DJ-AMIGO, стыдно сказать, но у меня что-то все равно не получилось с центрированием. Думаю, что это я сама тут что-то еще неправильно делаю.    |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| DJ-AMIGO 
								Гость
 | 
								|  | « Ответ #53 : 05-05-2005 11:10 »  |  | 
 
 Погоди-ка! Приведи свой код полностью, как он сейчас есть!  :-P |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| Demidova Aigul 
								Гость
 | 
								|  | « Ответ #54 : 05-05-2005 11:34 »  |  | 
 
 procedure TForm1.DBGridEh1CellClick(Column: TColumnEh);var JP:TJpegImage;
 BB:TMemoryStream;
 R:TRect;
 
 begin
 
 image_mapp.Visible:=True;
 
 
 if IsEmpty then begin
 image_mapp.Visible:=false;
 ShowMessage ('Нет картинок!');
 exit
 end
 else
 begin
 BB.Seek(0,soFromBeginning);
 TBlobField(dm.Query_path.FieldByName('path')).SaveToStream(BB);
 BB.Seek(0,soFromBeginning);
 jp:=TJPEGImage.Create;
 jp.LoadFromStream(BB);
 JP.DIBNeeded;
 R:=StretchImage1(JP);
 //image_mapp.Canvas.StretchDraw(R,JP);
 //image_mapp.Picture.Bitmap.Assign(JP);
 with image_mapp do begin
 Stretch:=false;
 Picture.Bitmap.Assign(JP);
 Width:=Abs(R.Right-R.Left);
 Height:=Abs(R.Top-R.Bottom);
 Stretch:=true;
 
 image_mapp.Left:=abs((image_mapp.Width mod 2)-(image_panel.Width mod 2));
 image_mapp.Top:=abs((image_mapp.Height mod 2)-(image_panel.Height mod 2));
 end;
 jp.Free;
 end;
 end;
 end;
 
 
 А это на добавление картинки:
 
 procedure Tdm.N1Click(Sender: TObject);
 var bs:TBlobStream;
 begin
 with modif_path do
 
 if OpenPictureDialog1.Execute then begin
 Form1.image_mapp.Picture.LoadFromFile(OpenPictureDialog1.FileName);
 Close;
 SQL.Clear;
 SQL.Add('insert into map_path (path,InventoryID) values (:0, :1)');
 ParamByName('0').LoadFromFile(OpenPictureDialog1.FileName,ftBlob);
 ParamByName('1').AsString := dm.Query1InventoryID.AsString;
 Prepare;
 ExecSQL;
 Query1.Close;
 Query1.Open;
 end;
 
 end;
 
 Я дико извиняюсь, у меня еще есть ошибка EDBEngineError, но не в этой базе. Может, подскажешь, если есть возможность. Это у меня в отдельной теме где-то рядом с темой "Помогите мне, глупой, найти ошибку в SQL-коде - в таблицу добавляется пустота".
 
 |  
						| 
								|  |  
								| « Последнее редактирование: 13-12-2007 20:47 от Алексей1153++ » |  Записан | 
 |  |  | 
	| 
			| 
					
						| DJ-AMIGO 
								Гость
 | 
								|  | « Ответ #55 : 05-05-2005 12:09 »  |  | 
 
 Кстати, а тебе как нужно отображать картинку?-чтобы картинка, сохраняла свои истинные размеры, какие они были в файле;
 -чтобы картинка, сохраняя пропоции, масштабировалась автоматически по размеру контейнера;
 -или чтобы картинка, сохраняя пропоции, масштабировалась автоматически по размеру TImage'а?
 
 |  
						| 
								|  |  
								| « Последнее редактирование: 13-12-2007 20:48 от Алексей1153++ » |  Записан | 
 |  |  | 
	| 
			| 
					
						| DJ-AMIGO 
								Гость
 | 
								|  | « Ответ #56 : 05-05-2005 12:10 »  |  | 
 
 А вот по поводу другого сабжа, с этим я постараюсь помочь по возможности!   |  
						| 
								|  |  
								|  |  Записан | 
 |  |  | 
	| 
			| 
					
						| DJ-AMIGO 
								Гость
 | 
								|  | « Ответ #57 : 05-05-2005 12:26 »  |  | 
 
 А вот и решение твоей проблемы!  function TForm1.StretchImage1(jp: TJPEGImage; const MaxSize : integer): TRect; var dw,dh:Single; begin   Result.Top:=0;   Result.Left:=0;   dw:=MaxSize/jp.Width;   dh:=MaxSize/jp.Height;   if jp.Height*dw>MaxSize then  begin     Result.Bottom:=MaxSize;     Result.Right:=Floor(dh*jp.Width);   end   else  begin     Result.Bottom:=Floor(dw*jp.Height);     Result.Right:=MaxSize;   end; end; procedure TForm1.Button1Click(Sender: TObject); var JP:TJpegImage;     BB:TMemoryStream;     R:TRect; begin   image_mapp.Visible:=True;   if dm.Query_path.IsEmpty then begin     image_mapp.Visible:=false;     ShowMessage ('Нет картинок!');     exit   end   else begin     BB.Seek(0,soFromBeginning);     TBlobField(dm.Query_path.FieldByName('path')).SaveToStream(BB);     BB.Seek(0,soFromBeginning);     jp:=TJPEGImage.Create;     try       jp.LoadFromStream(BB);       JP.DIBNeeded;       R:=StretchImage1(JP, min(image_panel.width-4, image_panel.height-4));       with image_mapp do begin         Stretch:=false;         Picture.Bitmap.Assign(JP);         Width:=Abs(R.Right-R.Left);         Height:=Abs(R.Top-R.Bottom);         Stretch:=true;       end;       image_mapp.Left:=abs((image_mapp.Width div 2)-(image_panel.Width div 2));       image_mapp.Top:=abs((image_mapp.Height div 2)-(image_panel.Height div 2));     finally       jp.Free;     end;   end; end; Обрати свое внимание на то, что я немного изменил вызов функции StretchImage1, поэтому ее замени тоже на мой вариант!!!    |  
						| 
								|  |  
								| « Последнее редактирование: 13-12-2007 20:49 от Алексей1153++ » |  Записан | 
 |  |  | 
	|  | 
	|  |