Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - TOleGraphic verkleinert das Bild :(


trm - Sa 09.07.11 00:45
Titel: TOleGraphic verkleinert das Bild :(
Folgender Code lädt eine Grafik aus einer Datei über einen Stream.
Bei dem Einlesen wird aber komischerweise aus einer jpeg - Datei von meiner Digitalkamera, das Originalbild im TOleGraphic-Object, im Speicher verkleinert.
Aus 3648x2736 Pixel wird 2736x2052 Pixel.

Woran kann das liegen?


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
uses
axCtrls;

[..]

var
  OleGraphic: TOleGraphic;
  fs: TFileStream;
begin

  OleGraphic := TOleGraphic.Create;
  fs := TFileStream.Create(Filename, fmOpenRead or fmSharedenyNone);
  OleGraphic.LoadFromStream(fs);

// ein hier ermitteltes OleGraphic.Width ist ein kleinerer Wert als das Originalbild breit ist mit .Height ist es ebenso.

[..]

end;


trm - Sa 09.07.11 20:12

Nachtrag:

Ein Beispiel angehangen.

Außerdem habe ich gelesen, dass dieser "Fehler" abhängig von der Bildschirmauflösung ist. Sobald das Quellbild größer als der Bildschirm ist, wird es im Speicher angepasst. Als Referenz dient hierbei wohl der DC vom Desktop.

Aber wie kann man das Problem dann lösen und dennoch den Weg über TOleGraphic gehen ?