AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi TJpegImage Komponente? Woher?
Thema durchsuchen
Ansicht
Themen-Optionen

TJpegImage Komponente? Woher?

Ein Thema von SiMc · begonnen am 29. Mär 2005 · letzter Beitrag vom 15. Feb 2008
Antwort Antwort
Seite 1 von 2  1 2      
SiMc

Registriert seit: 28. Feb 2005
8 Beiträge
 
#1

TJpegImage Komponente? Woher?

  Alt 29. Mär 2005, 16:56
Hallo

Ich hab mich bei Google dumm und dämlich gesucht, aber ich finde diese Komponente einfach nicht mehr (ich hatte sie schonmal runtergeladen und da hat auch alles geklappt).

Ein paar Sachen konnte ich schon finden, doch da fehlten beim compilen andauernd irgendwelche Dateien, aber egal...

Wenn mir jemand einen Link zu der funktionierenden Komponente geben könnte, wäre ich sehr dankbar.


-SiMc
denke besser, dass du denkst, sonst denkst du noch, dass du nicht denkst
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: TJpegImage Komponente? Woher?

  Alt 29. Mär 2005, 17:03
Nix runterladen, einfach die Unit "JPEG" usen
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat
Benutzerbild von Chegga
Chegga

Registriert seit: 5. Nov 2004
Ort: Kirchheim
453 Beiträge
 
Delphi 7 Architect
 
#3

Re: TJpegImage Komponente? Woher?

  Alt 29. Mär 2005, 17:09
Hi,

nicht mal das musst du.
Sobald du in eine TImage eine *jpg-Datei lädst,
wird in die uses automatisch jpeg hinzugefügt.
Tja, Delphi ist einfach der Hammer.

MfG Marc

P.S.: Warum einfach, wenn's auch schwierig geht?
Marc P.
Grüße aus Kirchheim Teck
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#4

Re: TJpegImage Komponente? Woher?

  Alt 29. Mär 2005, 17:14
Zitat von Chegga:
Hi,

nicht mal das musst du.
Sobald du in eine TImage eine *jpg-Datei lädst,
wird in die uses automatisch jpeg hinzugefügt.
Tja, Delphi ist einfach der Hammer.

MfG Marc

P.S.: Warum einfach, wenn's auch schwierig geht?
Zur Entwurfszeit ziemlich nett, aber zur Laufzeit nimmt man dann eben TJpegImage .
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
SiMc

Registriert seit: 28. Feb 2005
8 Beiträge
 
#5

Re: TJpegImage Komponente? Woher?

  Alt 29. Mär 2005, 17:22
Also ok, habe ich gemacht. Jpegs laden und speichern ist ja nun kein Problem mehr (da hätte ich auch selbst draufkommen können )

Aber ich habe ein Programm geschrieben, wo man u.a. auch zeichnen kann und andere Bilder einfügen kann. So, das hatte ich bis jetzt alles mit Bitmaps gemacht, doch mit jpegs isses einfach besser

Das Problem dabei ist, wenn ich nun auf dem Canvas zeichne, gibts nen Fehler:

Ein Bild kann nur geändert werden, wenn es einen Bitmap enthält.

Hmm, muss ich da noch viel umschreiben?
denke besser, dass du denkst, sonst denkst du noch, dass du nicht denkst
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#6

Re: TJpegImage Komponente? Woher?

  Alt 29. Mär 2005, 17:34
Zitat von SiMc:
Also ok, habe ich gemacht. Jpegs laden und speichern ist ja nun kein Problem mehr (da hätte ich auch selbst draufkommen können )

Aber ich habe ein Programm geschrieben, wo man u.a. auch zeichnen kann und andere Bilder einfügen kann. So, das hatte ich bis jetzt alles mit Bitmaps gemacht, doch mit jpegs isses einfach besser

Das Problem dabei ist, wenn ich nun auf dem Canvas zeichne, gibts nen Fehler:

Ein Bild kann nur geändert werden, wenn es einen Bitmap enthält.

Hmm, muss ich da noch viel umschreiben?
Auf was für eine Canvas willst du denn zeichnen? TJpegImage hat ja keine. Eigentlich sollte es so aussehen
  • Jpeg durch TJpegImage laden
  • in ein OffscreenBitmap kopieren (z.B. Assign)
  • auf dem Bitmap zeichnen
  • im OnPaint der Paintbox Inhalt des Bitmaps auf diese kopieren
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
SiMc

Registriert seit: 28. Feb 2005
8 Beiträge
 
#7

Re: TJpegImage Komponente? Woher?

  Alt 30. Mär 2005, 01:07
Zitat von Khabarakh:
[...]
Auf was für eine Canvas willst du denn zeichnen? TJpegImage hat ja keine. Eigentlich sollte es so aussehen
  • Jpeg durch TJpegImage laden
  • in ein OffscreenBitmap kopieren (z.B. Assign)
  • auf dem Bitmap zeichnen
  • im OnPaint der Paintbox Inhalt des Bitmaps auf diese kopieren
Also, ich lade nun eine jpg Datei auf eine Canvas Zeichenfläche. Dann will ich etwas darauf zeichnen, aber dann kommt eben dieser Fehler:

Code:
Ein Bild kann nur geändert werden, wenn es einen Bitmap enthält.
Ich hab schon ziemlich viel herumprobiert, aber es geht einfach nicht.
Ich brauche halt die TJpegImage Komponente (ja, es gibt eine die funktioniert).
denke besser, dass du denkst, sonst denkst du noch, dass du nicht denkst
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#8

Re: TJpegImage Komponente? Woher?

  Alt 30. Mär 2005, 10:05
Du hast also einfach eine neue Canvas instanziiert, also z.B.
Delphi-Quellcode:
var Can: TCanvas;
[...]
  Can := TCanvas.Create;
?
Versuch es wirklich mal mit einem TBitmap.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
SiMc

Registriert seit: 28. Feb 2005
8 Beiträge
 
#9

Re: TJpegImage Komponente? Woher?

  Alt 30. Mär 2005, 13:10
OK, es hat nun geklappt.

Ich habe anstatt Assign einfach Draw genommen (vorher halt noch die Größe ändern, sonst steht was über/ist was abgeschnitten).

Code:

var            
  imgj := TImage; // das Bild, was man nicht sieht

implementation

uses
Jpeg;

...

imgj := TImage.Create(imgj);

imgj.Picture.LoadFromFile('bild.jpg');
Image1.Height := imgj.Picture.Height;
Image1.Width := imgj.Picture.Width;
Image1.Canvas.Draw(0, 0, imgj.Picture.Graphic);

... // Image1 editieren

Image1.Assign(imgj.Picture); // sorum klappts wunderbar
Image1.Picture.SaveToFile('bild_edit.jpg');

Trotzdem vielen Dank für alle Antworten



-SiMc
denke besser, dass du denkst, sonst denkst du noch, dass du nicht denkst
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#10

Re: TJpegImage Komponente? Woher?

  Alt 30. Mär 2005, 14:09
Genau für nicht sichtbare Bilder sind Bitmaps da .
Delphi-Quellcode:
var
  bit: TBitmap; // das Bild, was man nicht sieht

implementation

uses
Jpeg;

...

bit := TBitmap.Create

bit.LoadFromFile('bild.jpg');
Image1.Height := bit.Height;
Image1.Width := bit.Width;
Image1.Canvas.Draw(0, 0, bit);

... // Image1 editieren

Image1.Assign(bit); // sorum klappts wunderbar
Image1.Picture.SaveToFile('bild_edit.jpg');
bit.Free; // nicht vergessen!
Am Programm ändert sich eigentlich nichts, so ist es einfach besser mit weniger Ressourcen.

PS: Egal ob Bitmap oder Image, die Instanz musst du wieder freigeben.
Sebastian
Moderator in der EE
  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 16:07 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