GDI plus

vložil Radek Červinka 22. února 2011 22:36

Když jsem v psaní o té grafice tak nemůžu zapomenout na GDI+ pro Delphi. API konverzi je dostupná na progdigy.com zároveň spolu s cca 80 kousky kódu jako ukázka.

antialiasing

Celkem je zábavné sledovat, jak MS mění knihovny pro kreslení jako ponožky. Standardem bylo GDI. Od Windows XP to bylo GDI+ (mimochodem jediná možnost jak si zakreslit v .NET) a nyní je tu Direct2D (původně jen Windows 7, pak i Vista). Direct2D je velmi hardwarově akcelerované (používá DirectX). Proti klasickým DirectX aplikacím umožňuje Direct2D míchat normální (GDI) zobrazení a nové v jednom okně.

Delphi v základu používá GDI, které je zapouzdřeno přes TCanvas atd. Od Delphi 2010 je přidána TDirect2DCanvas právě pro podporu Direct2D (viz. uvedený článek). Je to moc pěkné, ale bohužel právě jen pro Vista+.

V takovém případě je možné použít GDI+ (které se přes jednu DLL dá rozběhnout i na Windows 2000). Tato knihovna nemá všechny výhody Direct2D, ale něco za něco.

texture

Nakreslení elipsy texturou.

var
  graphics : TGPGraphics;
  pen: TGPPen;
  image: TGPImage;
  Brush: TGPTextureBrush;
begin
  graphics := TGPGraphics.Create(DC);
  image := TGPImage.Create('..\..\Media\Texture1.jpg');
  Brush := TGPTextureBrush.Create(image);
  Pen := TGPPen.Create(Brush, 30);
  graphics.DrawImage(image, 0, 0, image.GetWidth, image.GetHeight);
  graphics.DrawEllipse(Pen, 100, 20, 200, 100);
  pen.Free;
  image.Free;
  Brush.Free;
  graphics.Free;

Jak říkám, je to možnost.

Homepage: progdigy.com - opensource včetně dem

Tagy: , ,

Komponenty

Komentáře

4.4.2013 21:12:28 #

Daniel Andraščík

Stranka progdigy.com mi aktualne moc neodpoveda. Ale existuje dalsi projekt tu: http://www.bilsen.com/gdiplus/index.shtml . Podporuje D2009+ a takisto aj GDI+ specifikaciu verzie 1.1 ktora je vsak podporovana len pod Win Vista+ a je nutne ju zapnut direktivou "GDIP_0110".

Uzasne je vsak vytvorene demo, ktore sluzi zaroven ako help s popisom mnozstva featuriek ktore GDI+ pouziva. Je prilozene aj zkompilovane, a je lepsie ako sto helpov...

Daniel Andraščík

4.4.2013 22:11:36 #

radekc

API z progdigy je součástí novějších Delphi (myslím od 2010) a to autora tak naštvalo, že celé progdigy smazal - myslím si o něm svoje.

radekc

9.4.2013 16:25:06 #

Daniel Andraščík

:)))) to fakt?! ved to by mala byt pre neho pocta...

Daniel Andraščík

Komentování ukončeno

Naše nabídka

MVP
Ing. Radek Červinka - Embarcadero MVP
profil na linkedin, Twitter:@delphicz

Nabízím placené poradenství a konzultace v oblasti programování a vývoje SW.
Dále nabízíme i vývoj speciálního software na zakázku.

Neváhejte nás kontaktovat (i ohledně reklamy).

love Delphi

O Delphi.cz

Delphi je moderní RAD nástroj podporující tvorbu nativních aplikací pro platformu Win32, Win64, Mac OSX, Linux a na iPhone a Android.

Delphi.cz je nezávislý portál pro uživatele Delphi. Portál není koncipován pro úplné začátečníky, i když i ti se zde nebudou nudit, ale spíše na programátory, kteří již něco znají a chtějí své znalosti dále rozvíjet a sledovat novinky.

Poslední komentáře

Comment RSS

Dle měsíců