Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi ImageMagick - MagickGetSize (https://www.delphipraxis.net/103984-imagemagick-magickgetsize.html)

ThE_-_BliZZarD 25. Nov 2007 17:53


ImageMagick - MagickGetSize
 
Hallihallo liebe Gemeinde,

ich habe versucht mit der ImageMagick-Bibliothek zu arbeiten. Soweit klappt das auch alles ganz gut, nur würde ich z.B. gerne erfahren, wie groß mein Bild eigentlich ist.

Im API und in der DLL gibt es eine Funktion mit folgendem C-Header:

Code:
WandExport MagickBooleanType MagickGetSize(const MagickWand *wand,
  unsigned long *columns,unsigned long *rows)
{
  RectangleInfo
    geometry;

  assert(wand != (const MagickWand *) NULL);
  assert(wand->signature == WandSignature);
  if (wand->debug != MagickFalse)
    (void) LogMagickEvent(WandEvent,GetMagickModule(),"%s",wand->name);
  (void) ResetMagickMemory(&geometry,0,sizeof(geometry));
  (void) ParseAbsoluteGeometry(wand->image_info->size,&geometry);
  *columns=geometry.width;
  *rows=geometry.height;
  return(MagickTrue);
}
In meinem Delphiprogramm rufe ich die Funktion auf:
Delphi-Quellcode:
function MagickGetSize(wand: PMagickWand; cols, rows : PCardinal): MagickBooleanType; cdecl; external WandExport index 311;

var
 ori_width, ori_height: Cardinal;
begin
// Wand ist vom Typ PMagickWand und ist initalisiert etc pp.. da kann der Fehler nicht liegen
if (MagickGetSize(wand, @ori_width, @ori_height) = MagickTrue) then begin
   showmessage('blub'); // WIRD angezeigt
end;

end;
Könnte mir jemand verraten, ob ich den Header der Funktion falsch geportet habe? wie könnte man es anders machen? Ich wäre wirklich rieeßig dankbar wenn sich das mal jemand anschauen könnte.

Infos:
Download von ImageMagick (den DLL's): ImageMagick-6.3.7-1-Q16-windows-dll.exe
Download der Delphi-Header usw.: PascalMagick (DelphiHeader für ImageMagick DLL's)

P.S.: Nein, es gibt KEINE Dokumentation für den Delphikram..^^ Sonst hätte ich sie schon gelesen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:12 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz