AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

PNG anzeigen lassen

Ein Thema von Tanadirian · begonnen am 16. Feb 2004 · letzter Beitrag vom 20. Feb 2004
Antwort Antwort
Seite 1 von 2  1 2      
Tanadirian

Registriert seit: 13. Feb 2003
Ort: Pdm
67 Beiträge
 
#1

PNG anzeigen lassen

  Alt 16. Feb 2004, 04:57
Hallo

Ich will mir auf nem Formular verschiedene Png-Bilder anzeigen lassen, bekomme das aber nicht hin

Ich hab mir ein Bsp. aus der Delphihilfe rauskopiert aber das funzt nicht da bekomme ich die Fehlermeldung

[Fehler] tbitmap.pas(54): '.' erwartet, aber ';' gefunden bei
Delphi-Quellcode:
var
 BitMap1: TBitMap;
Hier der Code
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);

var
 BitMap1: TBitMap;

begin
     BitMap1 := TBitMap.Create;
try
   BitMap1.LoadFromFile('c:\Program Files\common Files\Borland Shared\Images\Splash\256color\factory.png');

   Canvas.Draw(20,20,BitMap1);
finally
   BitMap1.Free;

 end;
end;
Ich hab noch nie mit Grafiken gearbeitet und in der DP auch nichts gefunden, hoffe ihr könnt mir helfen.
The capacity to learn is a gift;
The ability to learn is a skill;
The willingness to learn is a choice.
-REBEC OF GINAZ
  Mit Zitat antworten Zitat
clues1

Registriert seit: 11. Feb 2004
97 Beiträge
 
#2

Re: PNG anzeigen lassen

  Alt 16. Feb 2004, 07:47
1.
PNG mit TBitMap laden Geht auf jeden fall nicht. Du musst dir von torry.net mal eine PNG Komponente downloaden.

2. Schreib mal deine Uses Klausel, ich schätze mal du hast tbitmap drinne, muss aber graphics lauten.
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: PNG anzeigen lassen

  Alt 16. Feb 2004, 13:07
Eine sehr gute in Delphi geschriebene PNG-Komponte findest Du unter TPNGImage/PNG Delphi auf Sourceforge.

Delphi bietet von sich aus nur sehr schlechten PNG-Support.
  Mit Zitat antworten Zitat
Tanadirian

Registriert seit: 13. Feb 2003
Ort: Pdm
67 Beiträge
 
#4

Re: PNG anzeigen lassen

  Alt 16. Feb 2004, 13:32
Hier ein Auszug aus der Delphihilfe:
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;
Wegen BitMap.LoadFromFile('MyBitmap.png'); dachte ich das ginge.

Graphics hab ich in der uses drinne


und bei der Sourgeforge-komponente fehlt ihm beim kompilieren die pngimage.dcu
The capacity to learn is a gift;
The ability to learn is a skill;
The willingness to learn is a choice.
-REBEC OF GINAZ
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: PNG anzeigen lassen

  Alt 17. Feb 2004, 08:12
Wenn die Datei "pngimage.dcu" nicht gefunden werden kannst mußt Du noch den Delphi-Suchpfad ergänzen, so das der Pfad in der die Datei "pngimage.pas" liegt auch aufgenommen ist.

Ist nun mal m.E. 'ne Macke von Delphi hier nicht selbständig den Suchpfad zu ergänzen wenn Packages hinzugefügt werden.
  Mit Zitat antworten Zitat
Tanadirian

Registriert seit: 13. Feb 2003
Ort: Pdm
67 Beiträge
 
#6

Re: PNG anzeigen lassen

  Alt 17. Feb 2004, 23:12
Danke Bernhard, jetzt gehts weiter, nun fehlt ihm die pngextra.dcu und weder diese dcu oder die pas hab ich auf der Platte. Muß ich da noch extra was downloaden?
The capacity to learn is a gift;
The ability to learn is a skill;
The willingness to learn is a choice.
-REBEC OF GINAZ
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: PNG anzeigen lassen

  Alt 18. Feb 2004, 08:20
pngextra? Sagt mir nichts. In welcher Unit wird diese verwendet?
  Mit Zitat antworten Zitat
Tanadirian

Registriert seit: 13. Feb 2003
Ort: Pdm
67 Beiträge
 
#8

Re: PNG anzeigen lassen

  Alt 18. Feb 2004, 12:55
Delphi-Quellcode:
program showcase2;

uses
  Forms,
  showcase2unit in 'showcase2unit.pas{Form1},
  pngextra in '..\pngextra.pas'; {<-- Hier kommt die Fehlermeldung}

{$R *.RES}

begin
  Application.Initialize;
  Application.CreateForm(TForm1, Form1);
  Application.Run;
end.
The capacity to learn is a gift;
The ability to learn is a skill;
The willingness to learn is a choice.
-REBEC OF GINAZ
  Mit Zitat antworten Zitat
Tanadirian

Registriert seit: 13. Feb 2003
Ort: Pdm
67 Beiträge
 
#9

Re: PNG anzeigen lassen

  Alt 18. Feb 2004, 16:19
Hab die entsprechende Zeile rausgenommen und jetzt geht die Komponente. Nun hab ich aber schon ne neue Frage, kann ich auch einfach nur die pngimage.pas in mein Prog einbinden und dann direkt mit den png's arbeiten? Wenn ja, kennt sich jmd damit aus und kann mir ein paar Stichwörter dazu geben? Ich hab nicht die Zeit mir 5000+ Zeilen Code durchzulesen.

Schon im Voraus vielen Dank.
The capacity to learn is a gift;
The ability to learn is a skill;
The willingness to learn is a choice.
-REBEC OF GINAZ
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#10

Re: PNG anzeigen lassen

  Alt 18. Feb 2004, 17:04
Sicher kannst Du damit ohne ein Formular arbeiten, indem du es codemäßig anlegt.

Code:
var
  png: TPngObject;
begin
  png := TPngObject.Create(nil);
  try
    // Dosomething
  finally
    png.Free;
  end;
end;
Was willst machen?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:38 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