А чем GDI+ от micro$oft не нравится. Умеет работать с bmp,icon,gif,jpeg,png,tiff.
Это старое GDI API дополненное рядом новых
методов и оформленное в виде с++ классов, поддержка входит в поставку
Win XP,.NET (для NT4,2000,Me,98 необходимо скачать gdiplus.dll ~ 1mb
http://www.microsoft.com/downloads/release.asp?releaseid=32738 )
Перед использованием в BCB5 надо 1) преписать файлы gdiplus*.h из
поставки VC7 или PlatformSDK в BCB5\Include 2) утилиткой
BCB5\BIN\coff2omf переконвертировать gdiplus.lib из поставки VC7 или
PSDK в gdiplus.lib понятный BCB ( ну или при помощи BCB5\implib
сделать gdiplus.lib из gdiplus.dll) 3) добавить в свой проект
gdiplus.h и gdiplus.lib
В BCB6 уже должна быть поддержка GDI+. Описание всех функций и классов
GDI+ есть в MSDN/PSDK Help.
вот примерчик кода для BCB5
//===================
#include <vcl.h>
//#pragma hdrstop
#include "Unit1.h"
#include <windows.h>
#include <gdiplus.h>
using namespace Gdiplus;
GdiplusStartupInput gdiplusStartupInput;
ULONG_PTR gdiplusToken;
void __fastcall TForm1::Button1Click(TObject *Sender)
{
HDC hdc=Image1->Canvas->Handle;
Gdiplus::Status s;
s=Gdiplus::GdiplusStartup(&gdiplusToken, &gdiplusStartupInput,NULL);
Gdiplus::Image* image=new Gdiplus::Image(L"2.png");
Gdiplus::Graphics Agraphic(hdc);
Agraphic.DrawImage(image,0,0);
}
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction
&Action)
{
Gdiplus::GdiplusShutdown(gdiplusToken);
}
//===================
Aleks Guy
Предыдущий вопрос
|
|
Следующий вопрос
источник
by jenyok
|