Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Bitmap Datein in Delphi anzeigen und andere sachen (https://www.delphipraxis.net/126631-bitmap-datein-delphi-anzeigen-und-andere-sachen.html)

gaui 29. Dez 2008 23:20


Bitmap Datein in Delphi anzeigen und andere sachen
 
Hallo erstmal! Also bin neu und hab ein paar fragen. Also ich muss eine Facharbeit (Jgst 12) über Bild Steganografie schreiben. Nun ja mein Lehrer verlangt von mir zusätzlich ein Programm mit dem man Nachrichten in Bildern verschlüsseln und entschlüsseln kann. Nur hab ich keine Ahnung wie ich eine bmp Datei in Delphi laden bzw. die einzelnen Pixel auslesen soll. Hab mir zwar die Delphi hilfe durchgelesen aber so richtig schlau geworden bin ihc daraus nicht. Da steht etwas über die Klasse TCanvas aber die kann nur create und so einige andere Methoden. Könnte mir da jemand vieleicht helfen?? Schön mal danke im voraus und Guten Rutsch euch allen!

rollstuhlfahrer 29. Dez 2008 23:34

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
HI und willkommen in der DP.

Deine Bilder lädst du am besten und einfachsten in ein TBitmap.
BSP:
Delphi-Quellcode:
procedure TForm1.Landen(DatName: TFileName);
var
  Bild: TBtmap;
begin
  Bild := TBitmap.Create;
  Bild.LoadFromFile(DatName);   // Muss als Endung unbedingt .bmp haben
  Bild.Free;  // keine Speicherprobleme erzeugen
end;
So und das Bild ist dann auch gleich wieder aus dem Speicher gefegt. (Was für'n Schwachsinn :-*)

Auf die einzelnen Pixel wolltest du mit TCanvas zugreifen, was auch nicht abzuraten ist.

Delphi-Quellcode:
procedure TForm1.GetFarbe(var r, g, b: Byte; Bild: TBitmap; X, Y: Integer);
var
  Farbe: TColor;
begin
  Farbe := Bild.Canvas.Pixels[X, Y];
  r := GetRValue(Farbe);
  b := GetBValue(Farbe);
  g := GetGValue(Farbe);
end;
Bernhard

Guten Rutsch

gaui 30. Dez 2008 00:33

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
oke das is alles so naja schön xD aber ich kenn mich da net wirklich aus programmiere erst seit einem Jahr also erstmal wenn ich ein neues Projekt erstelle muss ich doch irgendwie einen auslöser haben z.B. einen Button. So wenn ich jetzt den Button habe dann muss ich doch erst die Klasse Tbitmap erstellen um mit ihr zu arbeiten.
Also bei mir sieht das dann folgender Maßen aus:
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls;

type
  TForm1 = class(TForm)
    bBildladen: TButton;
    procedure bBildladenClick(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  Bitmap1: Tbitmap;

implementation

{$R *.DFM}

procedure TForm1.bBildladenClick(Sender: TObject);
var lBild:TBitmap;
begin
     lBild:= TBitmap.create;
     lBild.LoadFromFile(xxx)


end;

end.

Mein Problem ist jetzt da das ich zunächst nicht weiß wie ich den Dateinamen für LoadfromFIle angeben soll.
Wäre nett wenn sie es mir erklären würden und nicht nur die lösung hinschreiben:) weil ich hab vor Informatik als ein Abi fach zuwählen und wenn ich das dann nicht verstehe ist das schlecht :)

[edit=Sharky][delphi]-Tag gesetzt. Bitte verwende diese in Zukunft. Mfg, Sharky[/edit]

Sunlight7 30. Dez 2008 01:10

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Zitat:

Zitat von rollstuhlfahrer
// Muss als Endung unbedingt .bmp haben

Stimmt nicht, es könnte auch ein .wmf oder .emf sein

@gaui:
Wenn Deine Bitmaps immer im selben Verzeichnis sind, kannst Du
Delphi-Quellcode:
Bitmap.LoadFromFile('C:\DeinPfad\DeinBitmap.bmp');
verwenden.


Soll es aus dem Verzeichnis geladen werden, wo Deine Exe drinnen ist dann:
Delphi-Quellcode:
Bitmap.LoadFromFile(ExtractFileDir(Application.ExeName)'\DeinBitmap.bmp');
Oder wenn es der Benutzer selber laden können soll, dann suchst Du im Forum nach Hier im Forum suchenTOpenDialog und verwendest dann
Delphi-Quellcode:
Bitmap.LoadFromFile(OpenDialog1.FileName);
Zitat:

Zitat von gaui
Bitmap Datein in Delphi anzeigen und andere sachen

Für die anderen Sachen, dann bitte neue Threads, pro Thread soll es nur um ein Thema gehen ;)

guidok 30. Dez 2008 06:14

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Hallo!

In deinem Fall würde ich die Variable für das Bitmap in die Private-Sektion des Form verschieben, im OnCreate-Ereignis des Formulars erzeugen und im OnDestroy-Ereignis wieder freigeben. Damit hast du mit dem Erzeugen des Formulars bereits eine Instanz für dein Bitmap, die beim Beenden wieder entfernt wird.

Delphi-Quellcode:
type
TForm1 = class(TForm)
bBildladen: TButton;
procedure bBildladenClick(Sender: TObject);
private
{ Private-Deklarationen }
  DasBitmap: TBitmap;
public
{ Public-Deklarationen } 
end;

var
Form1: TForm1;

implementation

{$R *.DFM} 


//TForm1 OnCreate;
begin
  DasBitmap := TBitmap.Create;
end;

//TForm1 OnDestroy;
begin
  DasBitmap.Free;
end;    

end;

end.
Für das Laden des Bildes würde ich auch auf jeden Fall einen TOpenDialog nehmen. Diesen findest du in der Tool-Palette unter "Dialoge". Schau dir dabei auch mal die Eigenschaften im Objektinspektor an. Interessant für dich könnte u.a. "Filter" sein. Damit kannst du dir nur Dateien mit einer bestimmten Endund (z.B. *.bmp) anzeigen lassen. Der Dialog lässt sich beispielsweise in einer ButtonClick-Prozedur aufrufen:

Delphi-Quellcode:
procedure TfMain.btBildLadenClick(Sender: TObject);
begin
  if OpenDialog.Execute then begin //Execute ist True, wenn du den FileDialog mit dem Klicken des OK-Button beendest.
  DasBitmap.LoadFromFile(OpenDialog.FileName); //Hier lädst du jetzt das Bild
  end;
end;
Zum Anzeigen auf dem Formular bietet sich ein TImage an. Diesem kannst du das geladene Bitmap zur Anzeige zuweisen (mit Image.Picture.Bitmap.Assign).

gaui 30. Dez 2008 09:11

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
oke direkt ne Frage zu diesem oncreate und on destroy sind das Methoden von TForm? und dieses TOPenDialog wo krieg ich das im Forum her
? weil ihc muss das ja als ein Tool für Delphi einfügen? danke schon mal für die Hilfe

gaui 30. Dez 2008 09:15

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
und wenn ich das so mach
Zitat:

Bitmap.LoadFromFile(ExtractFileDir(Application.Exe Name)'\DeinBitmap.bmp');
dann erscheint eine Access Vialotion

Klaus01 30. Dez 2008 09:16

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
onCreate und onDestroy sind Ereignisse von TForm
TOpenDialog findest Du unter dem Reiter Dialoge (Dialogs).

Delphi-Quellcode:
Bitmap.LoadFromFile(ExtractFileDir(Application.ExeName)+'\DeinBitmap.bmp');
Da fehlt zumindest ein Pluszeichen.

Grüße
Klaus

gaui 30. Dez 2008 09:50

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Delphi-Quellcode:
type
  TForm1 = class(TForm)
    bBildladen: TButton;
    Image1: TImage;
    OpenDialog1: TOpenDialog;
    procedure bBildladenClick(Sender: TObject);
    procedure OpenDialog1CanClose(Sender: TObject; var CanClose: Boolean);
  private
    { Private-Deklarationen }
    Bitmap1: Tbitmap;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;



implementation

{$R *.DFM}

procedure TForm1.bBildladenClick(Sender: TObject);
var lBild:TBitmap;
begin
    // lBild:= TBitmap.create;
     //Image1:= lBild.LoadFromFile('D:\Dokumente und Einstellungen\Admin\Desktop\Informatik1')


end;

procedure TForm1.OpenDialog1CanClose(Sender: TObject;
  var CanClose: Boolean);
begin
     if OpenDialog1.Execute then
     begin
     Bitmap1.LoadFromFile(OpenDialog1.Bilder);
     end;
end;
so das steht bei mir da
Zitat:

Bitmap1.LoadFromFile(OpenDialog1.Bilder);
nur öffnet der den Ordner Bilder nicht er kennt den Begriff einfach nicht. Das zweite Problem is das er diesen OpenDialog zwar im Formular anzeigt aber nicht im Debugger

[edit=Sharky]Delphi-Tags gesetzt. Mfg, Sharky[/edit]

Klaus01 30. Dez 2008 09:53

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
versuche mal

Delphi-Quellcode:
Bitmap1.LoadFromFile(OpenDialog1.FileName);
Grüße
Klaus

guidok 30. Dez 2008 10:37

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Hast du dir mein Post eigentlich durchgelesen? Da steht alles drin, auch dass, was du mittlerweile noch gefragt hast... :cry:

Zitat:

Zitat von gaui
Delphi-Quellcode:
     Bitmap1.LoadFromFile(OpenDialog1.Bilder);

Wir kommst du auf so etwas? Die Klasse TOpenDialog hat keine Eigenschaft oder Methode, die "Bilder" heißt. Bitte schau dir auch einmal die Hilfe zum TOpenDialog an und speziell die Eigenschaft "FileName".

Desweiteren solltest du im OnClick des Buttons einfach die Execute-Methode des OpenDialog aufrufen. Diese liefert einen Boolschen Wert zurück, der TRUE ist, wenn im OpenDialog eine Datei ausgewählt und "OK" geklickt wurde. Siehe auch das Beispiel im Post #5.

Bitte benutze auch die Delphi-Tags, das macht den Quelltext wesentlich lesbarer.

gaui 30. Dez 2008 21:12

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Open: TOpenDialog;
    bBildladen: TButton;
    Image1: TImage;
    procedure bBildladenClick(Sender: TObject);
  private
    { Private-Deklarationen }
    DasBitmap:TBitmap;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.bBildladenClick(Sender: TObject);
begin
      if Open.Execute then
      begin
           Image1 := DasBitmap.LoadFromFile(Open.FileName);
      end;








end;

end.

so sieht das bei mir jetzt aus nur erscheint da ein inkompatibler Typ also ne Fehlermeldung
Delphi-Quellcode:
[pre:1:3cd51faa52][Fehler] Unit1.pas(33): Inkompatible Typen: 'TImage' und 'procedure, untyped pointer or untyped parameter'[/pre:1:3cd51faa52]

Könnt ihr mir da helfen? Weil Image1 soll das geladene Bild ja auf dem Formular darstellen :)

taaktaak 30. Dez 2008 21:29

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Moin, Moin.

Du hast das wohl ein wenig durcheinandergewürfelt, mit
Delphi-Quellcode:
 if Open.Execute then begin
   DasBitmap.LoadFromFile(Open.FileName);
   Image1.Picture.Bitmap.Assign(DasBitmap)
   end;
sollt es funktionieren.

gaui 30. Dez 2008 21:44

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Open: TOpenDialog;
    bBildladen: TButton;
    Image1: TImage;
    procedure bBildladenClick(Sender: TObject);
  private
    { Private-Deklarationen }
    DasBitmap:TBitmap;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.bBildladenClick(Sender: TObject);
begin
      if Open.Execute then
      begin
           if Open.Execute then begin
   DasBitmap.LoadFromFile(Open.FileName);
   Image1.Picture.Bitmap.Assign(DasBitmap)
   end;
      end;


end;

end.
Access Vialotion >.< hmm wenn ich das öffne dann hat der keinen datentyp seht ihr in der datei

taaktaak 30. Dez 2008 21:47

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Hab' schon drauf gewartet:

Delphi-Quellcode:
//TForm1 OnCreate;
begin
  DasBitmap := TBitmap.Create;
end;

//TForm1 OnDestroy;
begin
  DasBitmap.Free;
end;
fehlen, oder?

gaui 30. Dez 2008 21:51

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
boah mein lehrer hat uns 1000 mal gesagt das nicht zu vergessen xD danke!!!!!

taaktaak 30. Dez 2008 21:52

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Macht ja nichts!
Aus Fehlern lernt man oft am besten!
:P

gaui 30. Dez 2008 21:59

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
so jetzt kommt part 2 :) also die einzelnen Pixel bestehen ja aus Gelb Rot blau werten. Wie lese ich die mit der klasse TCanvas aus?? Könnt ihr mir da n par tipps geben weil bei Tcanvas kommt da immer zusatzmodul fehlt

taaktaak 30. Dez 2008 22:08

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Hat das nicht rollstuhlfahrer in Post#2 schon beschrieben?

gaui 30. Dez 2008 22:20

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
ich brauch das n bisschen ausführlicher weil z.b. den befehl getFarbe kennt der bei mir nicht ..

taaktaak 30. Dez 2008 22:24

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Delphi-Quellcode:
procedure TForm1.GetFarbe(var r, g, b: Byte; Bild: TBitmap; X, Y: Integer);
var
  Farbe: TColor;
begin
  Farbe := Bild.Canvas.Pixels[X, Y];
  r := GetRValue(Farbe);
  b := GetBValue(Farbe);
  g := GetGValue(Farbe);
end;
Das ist eine Methode deines Formulars, die du für deine Zwecke aufrufen kannst. Du übergibst dein Bitmap und die gewünschte Bildkoordinate; Rückgabewerte sind die 3 Farbanteile des angegebenen Punkts.

Sunlight7 30. Dez 2008 22:25

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Wenn Du Dich mit den Pixeln spielen willst solltest Du lieber nach Hier im Forum suchenScanLine in der DP suchen, Canvas.Pixels ist sowas von (gähn) langsam...

Edit:
Praktisches Beispiel: http://www.delphipraxis.net/internal...=625469#625469

gaui 30. Dez 2008 22:37

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Delphi-Quellcode:
unit Facharbeit;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Open: TOpenDialog;
    bBildladen: TButton;
    Image1: TImage;
    bPixelauslesen: TButton;
    efPixel: TEdit;
    procedure bBildladenClick(Sender: TObject);
    procedure bPixelauslesenClick(Sender: TObject);
  private
    { Private-Deklarationen }
    DasBitmap:TBitmap;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.bBildladenClick(Sender: TObject);
begin

 //TForm1 OnCreate;
begin
  DasBitmap := TBitmap.Create;
end;
      if Open.Execute then
      begin
      if Open.Execute then begin
       DasBitmap.LoadFromFile(Open.FileName);
       Image1.Picture.Bitmap.Assign(DasBitmap)
       end;
      end;

//TForm1 OnDestroy;
begin
  DasBitmap.Free;
end;

end;

procedure TForm1.bPixelauslesenClick(Sender: TObject);
begin
     efPixel.text:=(DasBitmap.ScanLine[]);
end;

end.
so 2 Fragen wenn ich scanline verwende was gibt mir scanline? eig die Farb werte oder? dann würd ich die gerne in dem edit feld ef Pixel darstellen nur klappt das mal wieder nicht... könnt ihr mir da mal helfen?

taaktaak 30. Dez 2008 22:44

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
gaui :shock:
Bevor wir bei ScanLine () einsteigen....
Was in aller Welt hast du mit OnCreate() und OnDestroy() gemacht?????

gaui 30. Dez 2008 22:48

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
wie??? ich hab das so gemacht das beim click des Buttons ein Bitmap erstellt wir und es funktioniert .. oke ihr kennt euch da besser aus was is falsch oder muss ich ändern? und wieso=?

Sunlight7 30. Dez 2008 22:51

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Naja, Du erzeugst das Bitmap und gibst es gleich weieder frei, aber grundsätzlich frage ich mich, warum man das Bitmap nicht gleich mit Image1.Picture.LoadFromFile lädt, wenn man schon ein TImage verwendet. :gruebel:

gaui 30. Dez 2008 23:01

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
sagen wirs so davon wusste ich nix ich kenne nur die Methode der zuweisung :) lern das ja erst seit einem jahr.

gaui 30. Dez 2008 23:03

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
aber ich kann das so mit der zuweisung machen oder? dann mach ich eben noch einen Button der das Image freigibt und dsa Programm schließt das wäre doch oke oder nich`?

gaui 30. Dez 2008 23:16

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
also nochmal zu diesem scanline. Ich hab herausgefunden, dass das ein indizierter Zugriff ist aber ich weiß nicht wirklich was da rein muss
die Delphihilfe sagt
Delphi-Quellcode:
ScanLine[Row: Integer]: Pointer;
also Row is ja die Zeile das is mir klar aber bei Pointer bin ich planlos

Sunlight7 30. Dez 2008 23:27

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Das mit der Zuweisung kannst Du machen, is halt n bißchen umständlicher, aber das TImage brauchste eigentlich nicht slebt freigeben, das macht Delphi für Dich ;)

Wenn Du meinem Link oben gefolgt wärst hättest Du eine Unit gefunden, in der SetPixel und GetPixel per ScanLine implementiert sind ;) (Es gäbe auch noch andere implementierungsmöglichkeiten)

Dazu zu sagen ist, das das nur bei 24 Bit (RGB) und 32 Bit (RGBA) Bitmaps so funktioniert, mit Pixelformat bekommst Du heraus, welches Format Deine Bitmap hat.

PS: Wenn Du mal kurz Zeit hast klicke auf http://www.delphipraxis.net/template.../icon_edit.gif, damt kannst Du Deine Posts edtieren und mußt nicht soviele hintereinander machen ;)

taaktaak 30. Dez 2008 23:27

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Also:

Der Vorschlag kam ja von guidok, da soll das BitmapCreate natürlich in das Oncreate() des Formulars, das Free() natürlich in das OnDestroy() des Formulars.

Natürlich geht's auch mit direkter Verwendung von Bitmap oder Image, beides ist doppelt-gemoppelt.

Das ScanLine liefert für die angegebene Zeile ein ByteArray zurück; ganauer: einen Zeiger auf ein ByteArray. Die D7 Hilfe hat folgendes Beispiel dazu:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);

// Dieses Beispiel zeigt die direkte Ausgabe in ein Bitmap
var
  x,y : Integer;
  BitMap : TBitMap;
  P : PByteArray;
begin
  BitMap := TBitMap.create;
  try
    // Ersetzen Sie in Windows MyBitmap.png durch den vollständigen Pfadnamen:
    // C:\Program Files\Common Files\Borland Shared\Images\Splash\256color\factory.bmp
    BitMap.LoadFromFile('MyBitmap.png');
    for y := 0 to BitMap.Height -1 do
    begin

      P := BitMap.ScanLine[y];
      for x := 0 to BitMap.Width -1 do
        P[x] := y;
    end;
    Canvas.Draw(0,0,BitMap);
  finally
    BitMap.Free;
  end;
end;
Das sollte dir eigentlich erst einmal weiterhelfen.

gaui 30. Dez 2008 23:30

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
oke.. mach ich nur ihr dürft mir nicht zuviel helfen :) is zwar gut gemeint aberdie Facharbeit muss auf eigenem Wissen enstehen und wenn ihr mir zu sehr helft gibt das ärger :) also dieses scanline daraus werd ich nicht schlau der will das nicht im editfeld anzeigen könnt ihr da was sagen?

taaktaak 30. Dez 2008 23:34

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Na, was soll im edit stehen? Du bekommst ein Array mit ByteWerten geliefert (für jede Spalte des Bildes ein Byte) - und in einem Edit kann nur ein String angezeigt werden.

gaui 30. Dez 2008 23:38

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
oke und worin kann ich mir das anzeigen lassen? oder kann ich irgendwie den wert in einen string umwandeln?

Sunlight7 30. Dez 2008 23:40

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Versteh ich das Richtig, das Du die RGB Werte in dem Edit anzeigen willst?

Dazu gibt es Hier im Forum suchenIntToStr

Edit: Oder Delphi-Referenz durchsuchenFormat
Edit: Edit: In einem TLabel, TMEmo oder TListBox kannst mehr Zeichen darstellen

gaui 30. Dez 2008 23:47

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
ja fürs erste will ich die in einem Edit feld anzeigen :) weil danach werde ich die in lokalen Variablen speichern und mit dem jeweiligen ascci code addieren also einfach nur fürs erste :) integer to string oke.. aber dieses Point macht mir Probleme was ist das überhaupt weil wenn ich eine lokaleVAriable mit integer ache gibts nen Fehler

Sunlight7 30. Dez 2008 23:59

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Ein Pointer ist nur ein Zeiger, quasi ein Wegweiser auf irgendwas hin.

Delphi-Quellcode:
var i:Integer;
P:Pointer;
begin
   i:=1; // i ist jetzt 1
   p:=@i; // p zeigt jetzt auf i
   Integer(p^):=2; // i ist jetzt 2
end;

gaui 31. Dez 2008 00:10

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Zitat:

Delphi-Quellcode:
  BitMap.LoadFromFile('MyBitmap.png');
    for y := 0 to BitMap.Height -1 do
    begin

      P := BitMap.ScanLine[y];
      for x := 0 to BitMap.Width -1 do
        P[x] := y;
    end;
    Canva

oke das versteh ich das gesamte Bild durchscannen. Aber das andere da kommt dieses TCanvas wieder und da steht was von draw also zeichen. Was ergibt das für einen sinn wenn ich nur den integer wert haben will?

Sunlight7 31. Dez 2008 00:14

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Mit Draw zeichnest Du ein Bild, zB ein Bitmap, da Du aber ein TImage verwendest wird das zeichnen für Dich bereits gemacht ;)

Michael Habbe 31. Dez 2008 00:15

Re: Bitmap Datein in Delphi anzeigen und andere sachen
 
Liste der Anhänge anzeigen (Anzahl: 3)
Hi,

habe Dir mal ein kleines Project erstellt, mit dem Du ein bischen mit den Farben experimentieren kannst. Quasi als Grundlagenforschung :wink:


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:54 Uhr.
Seite 1 von 2  1 2      

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