hi,
ich habe nun mal meine BMP auf die HD geschreiben und per FREAD in ein Memo (Binär) eingelesen.
Nun frage ich mich wie ich mit Xbase++ auf eine solche Memo Datei zugreifen und die BMP anzeigen lasse den :SetBuffer() liefert mir nun "Quatsch"
speichert jemand "so" BMP ab und kann mir mal auf die Sprünge helfen ?
BMP mit Fread im Memo. wie darstellen ?
Moderator: Moderatoren
-
- Rekursionen-Architekt
- Beiträge: 205
- Registriert: Mo, 07. Aug 2006 10:18
- Wohnort: Leipzig
- Danksagung erhalten: 11 Mal
Re: BMP mit Fread im Memo. wie darstellen ?
Hallo Jimmy,
ich gehe davon aus (da Du von "Memo (binär)" sprachst), dass Du richtigerweise die FOXDBE und den Feldtyp "V" zur Speicherung des Bitmap verwendet hast.
Denn bekanntermaßen kann man in DBFDBE-Memofeldern Binärdaten ja nur dann speichern, wenn man sie zuvor Hexadezimal- oder Base64-kodiert hat.
Wenn Du also FOXDBE mit Feldtyp "V" verwendest, und die im Memo gespeicherte und wieder ausgelesene Bitmap nicht korrekt angezeigt wird, liegt es möglicherweise an den 14 Bytes des Bitmap-Headers, den XbpBitmap() nicht verwalten kann, und die Du somit zuerst abschneiden müsstest, ehe Du die Bitmap-Daten an :setBuffer() übergibst:
ich gehe davon aus (da Du von "Memo (binär)" sprachst), dass Du richtigerweise die FOXDBE und den Feldtyp "V" zur Speicherung des Bitmap verwendet hast.
Denn bekanntermaßen kann man in DBFDBE-Memofeldern Binärdaten ja nur dann speichern, wenn man sie zuvor Hexadezimal- oder Base64-kodiert hat.
Wenn Du also FOXDBE mit Feldtyp "V" verwendest, und die im Memo gespeicherte und wieder ausgelesene Bitmap nicht korrekt angezeigt wird, liegt es möglicherweise an den 14 Bytes des Bitmap-Headers, den XbpBitmap() nicht verwalten kann, und die Du somit zuerst abschneiden müsstest, ehe Du die Bitmap-Daten an :setBuffer() übergibst:
Code: Alles auswählen
cBuffer := Datei->image // Bitmap-Daten aus Memo-Feld lesen
cBuffer := SubStr( cBuffer, 15 ) // Bitmap-Daten erst ab dem 15. Byte
oBmp:setBuffer( cBuffer )
Beste Grüße,
Sören
Sören
- Jan
- Marvin
- Beiträge: 14658
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: BMP mit Fread im Memo. wie darstellen ?
Jimmy,
ich mache soetwas. Ich schau nachher mal nach, das ich dir da Code rübergeben kann. Da ist auch das Problem der Anfangsbits bei bmp gelöst.Mein Weib hat aber Geburtstag heute, kann also ev. auch erst morgen werden.
Jan
ich mache soetwas. Ich schau nachher mal nach, das ich dir da Code rübergeben kann. Da ist auch das Problem der Anfangsbits bei bmp gelöst.Mein Weib hat aber Geburtstag heute, kann also ev. auch erst morgen werden.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- AUGE_OHR
- Marvin
- Beiträge: 12909
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 46 Mal
Re: BMP mit Fread im Memo. wie darstellen ?
Ja danke.Jan hat geschrieben:ich mache soetwas. Ich schau nachher mal nach, das ich dir da Code rübergeben kann. Da ist auch das Problem der Anfangsbits bei bmp gelöst.
aber sie wird nicht "so alt" wie Olaf ...Jan hat geschrieben:Mein Weib hat aber Geburtstag heute, kann also ev. auch erst morgen werden.
also auch an Sie ein und alles Gute zum Geburtstag
gruss by OHR
Jimmy
Jimmy
- Jan
- Marvin
- Beiträge: 14658
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: BMP mit Fread im Memo. wie darstellen ?
Hallo Jimmy,
nee, so alt ist sie noch nicht. Wie sie heute in Facebook schrieb: Ihr letzter Geburtstag mit einer 3 davor...
Aber ich muß Dich leider enttäuschen. Mein Gedächtnis hat mich getäuscht. Ich lese doch mit MemoRead() ein, nicht mit FRead(). Und ich hatte Deine Aussage zum "gespeichert in Memo-Feld" leider beim ersten lesen mißinterpretiert. Ich mach das, wie Sören auch beschrieb, mit einem V-Feld in einer FOX-dbf. Was überhaupt keinerlei Probleme bereitet.
Sorry, das ich Dir da doch nicht weiterhelfen kann.
Jan
nee, so alt ist sie noch nicht. Wie sie heute in Facebook schrieb: Ihr letzter Geburtstag mit einer 3 davor...
Aber ich muß Dich leider enttäuschen. Mein Gedächtnis hat mich getäuscht. Ich lese doch mit MemoRead() ein, nicht mit FRead(). Und ich hatte Deine Aussage zum "gespeichert in Memo-Feld" leider beim ersten lesen mißinterpretiert. Ich mach das, wie Sören auch beschrieb, mit einem V-Feld in einer FOX-dbf. Was überhaupt keinerlei Probleme bereitet.
Sorry, das ich Dir da doch nicht weiterhelfen kann.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.