AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi PNGs oder Dateien allgemein in EXE einbinden und auslesen
Thema durchsuchen
Ansicht
Themen-Optionen

PNGs oder Dateien allgemein in EXE einbinden und auslesen

Ein Thema von entwickler · begonnen am 11. Nov 2011 · letzter Beitrag vom 23. Dez 2011
Antwort Antwort
Seite 4 von 5   « Erste     234 5      
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.617 Beiträge
 
Delphi 12 Athens
 
#31

AW: PNGs oder Dateien allgemein in EXE einbinden und auslesen

  Alt 14. Nov 2011, 11:06
Es muss es aber zuerst generell funktionieren, gell?
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#32

AW: PNGs oder Dateien allgemein in EXE einbinden und auslesen

  Alt 14. Nov 2011, 14:10
Es muss es aber zuerst generell funktionieren, gell?
Eine Funktion, die nicht funktioniert ist ja dann eigentlich auch keine
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.617 Beiträge
 
Delphi 12 Athens
 
#33

AW: PNGs oder Dateien allgemein in EXE einbinden und auslesen

  Alt 14. Nov 2011, 14:14
procedure, function, malfunction

Nee, is schon klar, das war ja auch nur ein Beispiel von mir, wie man generell das 1. Teilbild aus dem großen Ressourcenbild herauskopieren kann. Ich fände es sowieso sinniger, die Bildchen einzeln in die Ressourcen zu packen, das dürfte um Einiges einfacher zu handeln sein.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von entwickler
entwickler

Registriert seit: 16. Feb 2011
Ort: Herten
78 Beiträge
 
Delphi 5 Professional
 
#34

AW: PNGs oder Dateien allgemein in EXE einbinden und auslesen

  Alt 14. Nov 2011, 20:39
Kann ich die Grafiken, wenn ich sie einzeln in die *.rc (bzw. *.res)- Datei einbinde, auch im png-Format übergeben? Und muss die *.rc dann nicht 493 Zeilen lang sein?
Okay, das mit dem konvertieren und zurechtschneiden kann man sich dann sparen...
Traue einem PC nur soweit, wie du ihn werfen kannst.
  Mit Zitat antworten Zitat
Benutzerbild von wicht
wicht

Registriert seit: 15. Jan 2006
Ort: Das schöne Enger nahe Bielefeld
809 Beiträge
 
Delphi XE Professional
 
#35

AW: PNGs oder Dateien allgemein in EXE einbinden und auslesen

  Alt 14. Nov 2011, 21:13
Zitat:
Kann ich die Grafiken, wenn ich sie einzeln in die *.rc (bzw. *.res)- Datei einbinde, auch im png-Format übergeben?
Was meinst du mit "übergeben"? Vielleicht ist das noch nicht ganz klar: mit RCDATA in der .rc-Datei sagst du einfach, dass Daten (eine Folge von Bytes aus der angegebenen Datei) in die .res-Datei gepackt werden sollen. Dabei weiß keiner, ob es sich nun um PNG, BMP, JPEG oder eine Text-Datei handelt. Und diese Folge von Bytes findet sich in der .dll-Datei dann wieder. Sie sind zu dieser Zeit im png-Format. Wenn du diese Daten nun in deinem Programm lädst (mit dem gezeigten Code), ist das erstmal nur eine Folge von Bytes (im TResourceStream), der dann von der PNG-Komponente geladen wird, und von dieser in ein Bild "interpretiert" wird. Ich wüsste nicht, wie das anders gehen soll.

Zitat:
Und muss die *.rc dann nicht 493 Zeilen lang sein?
Wie lang die .rc-Datei wird, hängt davon ab, wieviele Bilder du in diese aufnimmst. So ganz verstehe ich die Frage nicht. Bei einem Bild ist es eben eine Zeile, bei 100 Bildern sind es eben 100 Zeilen. Die .rc-Datei ist ja nur der "Quelltext" für die .res-Datei, die "kompiliert" wird. Und die .res-Datei wächst natürlich mit der Anzahl der Bilder, die in sie hinein "kompiliert" wird.

Zitat:
Okay, das mit dem konvertieren und zurechtschneiden kann man sich dann sparen...
Zurechtschneiden/Konvertieren kannst du machen, bevor du die Dinge in die .res-Datei kloppst, oder eben zur Laufzeit, nachdem das TPNGImage aus dem TResourceStream erstellt wurde. Vernünftiger ist es wohl, das Konvertieren/Zurechtschneiden vor dem "kompilieren" in die .res-Datei zu machen, sofern das Ergebnis der Konvertierung in allen Szenarien (bei allen Benutzern) am Ende das selbe sein soll.

HTH
http://streamwriter.org

"I make hits. Not the public. I tell the DJ’s what to play. Understand?"
  Mit Zitat antworten Zitat
Benutzerbild von entwickler
entwickler

Registriert seit: 16. Feb 2011
Ort: Herten
78 Beiträge
 
Delphi 5 Professional
 
#36

AW: PNGs oder Dateien allgemein in EXE einbinden und auslesen

  Alt 14. Nov 2011, 21:35
Oh, jetzt hab ich das (überarbeitete) Programm mal laufen lassen, und pngimage.pas kennt kein TPNGImage, ich habe es mal durch TPNGObject ersetzt (ich denke mal, du meinst das).

Wenn ich jetzt im Testprogramm auf Button1 klicke, kommt zwar keine Fehlermeldung mehr, aber eine Grafik zeigt mir das Programm auch nicht an. Ich habe keine Ahnung, wie ich jetzt an die Grafik komme.

Ach so, @wicht

Ich habe gedacht, dass ich das Laden von mehreren hundert (!) Grafiken vielleicht irgendwie einfacher beschreiben kann, und mit dem zurechtschneiden/ konvertieren hast du auch recht.
Traue einem PC nur soweit, wie du ihn werfen kannst.
  Mit Zitat antworten Zitat
Benutzerbild von wicht
wicht

Registriert seit: 15. Jan 2006
Ort: Das schöne Enger nahe Bielefeld
809 Beiträge
 
Delphi XE Professional
 
#37

AW: PNGs oder Dateien allgemein in EXE einbinden und auslesen

  Alt 15. Nov 2011, 00:16
Zitat:
Ich habe gedacht, dass ich das Laden von mehreren hundert (!) Grafiken vielleicht irgendwie einfacher beschreiben kann, und mit dem zurechtschneiden/ konvertieren hast du auch recht.
Du könntest dir für das Erstellen der .rc-Datei z.B. eine Batch-Datei/ein Skript/ein Delphi-Programm bauen. Dann sparst du dir viel Tipparbeit. Wenn die Resourcen danach z.B. Bild_1 bis Bild_200 heißen, könntest du sie z.B. in einer Schleife laden - for i := 1 to 200 do LoadImage('Bild_' + IntToStr(i)); wobei du das Bild in LoadImage() z.B. einer Liste anfügst...
http://streamwriter.org

"I make hits. Not the public. I tell the DJ’s what to play. Understand?"

Geändert von wicht (15. Nov 2011 um 00:18 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#38

AW: PNGs oder Dateien allgemein in EXE einbinden und auslesen

  Alt 15. Nov 2011, 00:25
Ich würde es ganz einfach machen für einen Anfänger: In mehreren Bitmaps und ohne DLL. Die rc-Datei würde ich von Hand erstellen. Ist zwar mehr Arbeit, aber erst mal einfacher.
Michael
Ein Teil meines Codes würde euch verunsichern.

Geändert von Luckie (15. Nov 2011 um 00:30 Uhr)
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.685 Beiträge
 
Delphi 2007 Enterprise
 
#39

AW: PNGs oder Dateien allgemein in EXE einbinden und auslesen

  Alt 15. Nov 2011, 01:47
Wozu überhaupt die DLL hier? Resource-DLLs nutzt man, wenn man die betreffenden Resourcen austauschbar halten muss (und selbst da ist diese Praxis mächtig aus der Mode gekommen) - das sehe ich hier irgendwie nicht gegeben. Also: Einfach an die EXE kleben und ab dafür, oder einfach die Bilder "as they are" in ein Unterverzeichnis, wenn sie denn separat vom Programm austauschbar bleiben sollen.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.617 Beiträge
 
Delphi 12 Athens
 
#40

AW: PNGs oder Dateien allgemein in EXE einbinden und auslesen

  Alt 15. Nov 2011, 08:00
Ich habe gestern Abend unter Delphi 7 (die älteste Version, die ich noch habe) eine kleine Demoanwendung erstellt (mit DLL und den PngComponents). Falls noch Interesse besteht kann ich sie heute nach Feierabend ja mal hochladen.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 4 von 5   « Erste     234 5      


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 14:35 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