Bilddatei öffnen, zeichnen, auswerten, verändern

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
400kmh
Beiträge: 100
Registriert: Do 25. Mär 2010, 04:03

Bilddatei öffnen, zeichnen, auswerten, verändern

Beitrag von 400kmh »

Hallo,

wie kann ich mit Lazarus eine Bilddatei, deren Dateipfad ich kenne, öffnen, sie auf eine Form zeichnen, und auf jeden Pixel der Bilddatei einzeln zugreifen und diesen ändern?

SoE
Beiträge: 84
Registriert: Mo 31. Aug 2015, 01:51

Re: Bilddatei öffnen, zeichnen, auswerten, verändern

Beitrag von SoE »

AggPas, LazRGBGraphic, BGRABitmap, GR32, VampyreImaging LIB...

Da gibt es doch 'ne Menge Zeug was einem gefallen könnte....
Wobei GR32 geht nicht auf Linux...

400kmh
Beiträge: 100
Registriert: Do 25. Mär 2010, 04:03

Re: Bilddatei öffnen, zeichnen, auswerten, verändern

Beitrag von 400kmh »

SoE hat geschrieben:AggPas, LazRGBGraphic, BGRABitmap, GR32, VampyreImaging LIB...

Da gibt es doch 'ne Menge Zeug was einem gefallen könnte....
Wobei GR32 geht nicht auf Linux...
Also bisher sieht mein Programm so aus:
Program Bildprogramm; {$mode objfpc} {$H+}

{$apptype gui}

uses
Interfaces, Forms;

Var
Form1: TForm;

begin
Application.Initialize;
Application.CreateForm(TForm, Form1);
Application.Run; end.
"AggPas, LazRGBGraphic, BGRABitmap, GR32, VampyreImaging LIB", sind das Sachen die Ich unter "uses" hinschreiben muss, oder sind das Packages, die Ich über den Projektinspektor hinzufügen muss wie "LCL", oder sind das Sachen die ich erst aus dem Internet downloaden muss?

Mit Bitmaps/Images habe ich schon gearbeitet, aber ich habe keine Ahnung, wie man eine Bilddatei öffnet. Es handelt sich vor allem um ".bmp"-Dateien, aber ich will auch ".jpg"- und ".png"-Dateien öffnen können. Es kann ja nicht schwer sein, aber ich habe halt keinen Plan.

Warf
Beiträge: 2122
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

Re: Bilddatei öffnen, zeichnen, auswerten, verändern

Beitrag von Warf »

Mit so was kannst du verschiedene Graphiken in eine TBitmap laden:

Code: Alles auswählen

function loadBitmap(s: String; b: TBitmap);
Begin
  With TPicture.Create do 
  Try
     loadFromFile(s);
     b.Assign(graphic);
  Finally 
    Free;
  end;
End;
Da ich grad am Handy bin kam das fehlerhaft sein


Antworten