LabVIEWForum.de - bmp einlesen und ausgeben

LabVIEWForum.de

Normale Version: bmp einlesen und ausgeben
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Häh, ich les eine BMP ein (BMP-Datei lesen), gebe die Grafikdaten an BMP-Datei schreiben und hinterher ist die Datei fast doppelt so groß und zwar deswegen, weil, im Hexeditor betrachtet, noch ziemlich viele Nullen angehängt werden (und ein paar wenige Zeichen im Header wurden verändert). Kann mir jemand sagen, was da passiert?

Gruß

Philipp
Echt? Bei mir nicht. Lad' mal Dein VI hoch.

Gruß Markus

' schrieb:Häh, ich les eine BMP ein (BMP-Datei lesen), gebe die Grafikdaten an BMP-Datei schreiben und hinterher ist die Datei fast doppelt so groß und zwar deswegen, weil, im Hexeditor betrachtet, noch ziemlich viele Nullen angehängt werden (und ein paar wenige Zeichen im Header wurden verändert). Kann mir jemand sagen, was da passiert?

Gruß

Philipp
Hier die Dateien (ich darf wohl keine BMPs hochladen, deshalb bei Original und Kopie bitte die Dateiendung von vi nach bmp ändern).

Lv82_img[attachment=11073]
[attachment=11074]
[attachment=11075]

Gruß

Philipp
Tatsache, Du hattest Recht. Hmm
Ich hab' es bei mir auch mit einem anderen BMP probiert (nachdem es heute morgen ja geklappt hatte) und es wurde von ca. 16 kB auf ca. 19 kB vergrößert.
Ich weiß aber leider nicht, an was das liegt.

Gruß Markus
' schrieb:Hier die Dateien (ich darf wohl keine BMPs hochladen, deshalb bei Original und Kopie bitte die Dateiendung von vi nach bmp ändern).

Lv82_img[attachment=38152:Unbenannt_3.vi]
[attachment=38153:Original.vi]
[attachment=38154:Kopie.vi]

Gruß

Philipp

Ziemlich einfach. Die Unterfunktion "Write BMP Data.vi" hat eigentlich einen Bug für BMP Files. Da BMP Files und ICO Fiels eigentlich beinahe dasselbe sind wurde die Funktion so geschrieben dass sie beide schreiben kann. Icons haben am Ende noch eine BW Bitmap für die Maske angehängt. Eine BMP hat keine Maske aber das Write BMP Data.vi schreibt dies Maske trozdem immer auch wenn sie am Eingang nicht vorhanden war. Da es eine BW und damit 1Bit Maske ist, ist der extra Overhead meist nicht zu sehen, ausser die BMP ist selber BW und verdoppelt deshalb gleich. Im Prinzip kein grosses Problem da alle mir bekannten BMP Lese-Routinen die extra Daten einfach ignorieren.

Rolf Kalbermatter
Referenz-URLs