Das Forentreffen 2018 findet am 20./21. April in Dresden statt. Weitere Infos hier
Anmeldungen zum Forentreffen 2018 sind auf der Anmeldeseite möglich
Zur Homepage des Deutschsprachige Xbase-Entwickler e. V.
Xbase++-Wiki des Deutschsprachige Xbase-Entwickler e. V.

Bildgröße feststellen [Erledigt]

Alle Fragen um die Programmierung, die sich sonst nicht kategorisieren lassen. Von Makro bis Codeblock, von IF bis ENDIF

Moderator: Moderatoren

Antworten
Benutzeravatar
Jan
Foren-Administrator
Foren-Administrator
Beiträge: 12486
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Kontaktdaten:

Bildgröße feststellen [Erledigt]

Beitrag von Jan » Di, 31. Okt 2017 17:02

Hallo,

ich brauche die Größe eines Bildes. Das kann bmp, jpg, oder png sein. Das ist ja ansich kein Problem, es gibt ja :load und :loadFile, und kann das dann mit :xSize und :ySize auslesen. Aber ich habe die Grafik nicht als Datei und nicht als Recource vorliegen. Sondern als Inhalt eines Typ-V-Memofeldes.

Hat jemand eine Idee, wie ich da die Abmessungen heraus bekommen kann?

Oder muß ich mir die Maße jeweils aus dem String rausfiltern? Fände ich etwas umständlich, weil ich dann drei Dateiformate unterschiedlich abarbeiten müsste. Und halt nicht so einfach und elegant wie über XbpBitmap().

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
Beiträge: 13749
Registriert: Fr, 23. Sep 2005 4:58
Wohnort: Berlin
Kontaktdaten:

Re: Bildgröße feststellen

Beitrag von Martin Altmann » Di, 31. Okt 2017 17:14

Was spricht dagegen, den Inhalt des Feldes in eine Datei zu schreiben, dort die Werte auszulesen und dann die Datei zu löschen? Zumindest, wenn Du den String nicht danach durchsuchen willst...

Viele Grüße,
Martin
:grommit:
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: http://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: http://meldungen.altem.de/

Mitglied der XUG Osnabrück
stellv. Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
Jan
Foren-Administrator
Foren-Administrator
Beiträge: 12486
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Kontaktdaten:

Re: Bildgröße feststellen

Beitrag von Jan » Di, 31. Okt 2017 17:23

Hallo Martin,

daran hatte ich auch schon gedacht, an einer anderen Stelle mach ich das auch (aus anderen Gründen). Meine Hoffnung war aber, das ich das direkt mit dem schon geladenen String machen könnte. Das können schon recht viele Grafiken werden, die da je Dokument verarbeitet werden müssen. Und da würde ich mir das Speichern und per XbpBitmap()-Laden schon gerne sparen. Zumal ich den String ohnehin schon in einer Variablen stehen habe.

Aber richtig, das wäre zumindest von der Vorgehensweise wesentlich entspannter als String auslesen.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 10657
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: Bildgröße feststellen

Beitrag von AUGE_OHR » Di, 31. Okt 2017 18:39

Jan hat geschrieben:
Di, 31. Okt 2017 17:02
Das ist ja ansich kein Problem, es gibt ja :load und :loadFile, und kann das dann mit o:xSize und o:ySize auslesen. Aber ich habe die Grafik nicht als Datei und nicht als Recource vorliegen. Sondern als Inhalt eines Typ-V-Memofeldes.
ich verstehe dein Problem nicht den du musst ja "immer" das Bild erst laden bevor du Informationen bekommst. aus einer Memo Datei "lädt" man mit SetBuffer() und dann kanst du auch o:xSize und o:ySize auslesen.

p.s. wenn man ein Bild im Memo hat sollte es auch ein Feld geben wo man weiter Infos reinschreiben kann wie X/Y Size
gruss by OHR
Jimmy

Benutzeravatar
Jan
Foren-Administrator
Foren-Administrator
Beiträge: 12486
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Kontaktdaten:

Re: Bildgröße feststellen

Beitrag von Jan » Di, 31. Okt 2017 18:48

Jimmy,

das hilt nicht weiter. Denn wenn ich das Bild von der Festplatte/USB-Stick/wasauchimmer auslese, dann lese ich das als Strnig ein. Und habe noch immer nicht die Abmessungen. Kann sie also auch nicht in der dbf speichern.

Das mit dem :setBuffer() muß ich mal kontrollieren. In dem vorhandenen Codeteil wird das gemacht, und trotzdem gespeichert. Da muß ich mal schauen, ob das damals versehentlich doppelt gemacht worden war.

Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.

Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 10657
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg

Re: Bildgröße feststellen

Beitrag von AUGE_OHR » Di, 31. Okt 2017 20:43

Jan hat geschrieben:
Di, 31. Okt 2017 18:48
... dann lese ich das als Strnig ein.

Das mit dem :setBuffer() muß ich mal kontrollieren.
mit o:Load oder o:Loadfile "liest" man ein File oder Resource "in ein Bitmap".
wenn du nun mit FREAD / MEMOREAD oder sonstiges ein Bitmap "als String" einliest musst du es "in das Bitamp überführen" was das SetBuffer() macht.

klar könntest man den "String" durchsuchen nach dem Bitmap Header aber wenn es "in" einem XbpBitmap steckt dann kann man auch die o:xSize und o:ySize iVAR benutzen um die Grösse abzufragen.
gruss by OHR
Jimmy

Antworten