![]() |
|
|
#1
|
|||
|
|||
|
Здравствуйте, подскажите способы изменение разрешения изображения формата bmp,jpeg в делфи с минимальной потерей качества,какие операторы за это отвечают?
если можно приведите пример изменения любого разрешения. Последний раз редактировалось player891, 20.03.2012 в 21:57. |
|
#2
|
||||
|
||||
|
я за GdipDrawImageRectI, но можно и StretchBlt использовать.
|
|
#3
|
|||
|
|||
|
можно установить imagemagick, примеры из коммандной строки: http://www.imagemagick.org/Usage/resize/
|
|
#4
|
|||
|
|||
|
Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
GDIPAPI,
GDIPOBJ;
type
TForm1 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure OnPaint(DC: HDC);
var
graphics : TGPGraphics;
Image, pThumbnail: TGPImage;
begin
graphics := TGPGraphics.Create(DC);
Image:= TGPImage.Create('D:\1.jpeg');
pThumbnail := image.GetThumbnailImage(60, 48, nil, nil);
graphics.DrawImage(pThumbnail, 10, 10, pThumbnail.GetWidth, pThumbnail.GetHeight);
Image.Free;
pThumbnail.Free;
graphics.Free;
end;
end.Запускаю ран высвечивается красная строка 7 по счету GDIPAPI,что не так? |
|
#5
|
||||
|
||||
|
Отсутствует соответствующий юнит или не найден путь к нему.
|
|
#6
|
|||
|
|||
|
[Error] Unit1.pas(8): Declaration expected but identifier 'GDIPAPI' found - Декларация ожидалось, но идентификатор "GDIPAPI" найден.что это значит?переводчик криво переводит, а с англ я не дружу.
[Error] Unit1.pas(27): Undeclared identifier: 'TGPGraphics' - необъявленный идентификатор: "TGPGraphics".я же объявил их в var,почему ошибка? [Error] Unit1.pas(28): Undeclared identifier: 'TGPImage' - необъявленный идентификатор: 'TGPImage' [Error] Unit1.pas(30): Missing operator or semicolon - Отсутствует оператор или точка с запятой - не понял какого оператора ему нужно?) [Error] Unit1.pas(31): Missing operator or semicolon [Error] Unit1.pas(33): Missing operator or semicolon [Error] Unit1.pas(34): Missing operator or semicolon [Error] Unit1.pas(34): Missing operator or semicolon [Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas' - [Fatal Error] Project1.dpr (5): не удалось скомпилировать использовать 'Unit1.pas' |
|
#7
|
||||
|
||||
|
Проблемы с чтением? Я уже выше сказал почему.
|
|
#8
|
|||
|
|||
|
Код:
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, // <-- Здесь, уже исправленное!!! GDIPAPI, GDIPOBJ; |
|
#9
|
||||
|
||||
|
|