2016-06-20 12 views
0

Ich habe eine Bitmap und die angegebenen HorizontalResolution und VerticalResolution Eigenschaften sind beide 96. Aber wenn ich das gleiche Bild in Gimp öffnen, ist die berichtete dpi 300x300.Bitmap meldet falsche Auflösung?

Warum gibt es einen Unterschied?

+0

Was sagen andere Anwendungen, wie IrfanView oder Windows-Eigenschaften-Details? 96dpi ist eine übliche Bildschirmauflösung. Wenn Sie eine Bitmap erstellen, wird standardmäßig die Bildschirmauflösung verwendet. Sie können jedoch die Auflösung vor dem Speichern einstellen. – TaW

+0

Mögliches Duplikat von [Pixels in Punkte umwandeln] (http://stackoverflow.com/questions/139655/convert-pixels-to-points) –

+0

Kein Duplikat, soweit ich das beurteilen kann. Der Link handelt von [typografischen Punkten] (https://en.wikipedia.org/wiki/Point_%28typography%29), nicht von der Auflösung! – TaW

Antwort

0

Die Image meldet die Auflösung in PPI. Zur Umrechnung in DPI (wie in GIMP gezeigt), verwenden Sie die folgende Formel:

var dpiWidth = image.Width * 72/image.HorizontalResolution; 
var dpiHeight = image.Height * 72/image.VerticalResolution; 
+0

Ich bezweifle, das ist eigentlich dein Problem noch eine Antwort geschweige denn eine Lösung ... Zeig uns, wie Sie das Bild lesen! Es gibt eine subtile Möglichkeit, Ihr Programm über die Auflösung zu verwechseln. - (dpi im engeren Sinne bezieht sich nur auf die Druckhardware. Es gibt keinen Grund, warum Gimp nichts als ppi melden würde. Sie werden fast als dpi bezeichnet. Siehe [hier für eine Diskussion] (https://en.99designs.de/blog/tips/ppi-vs-dpi-whats-the-difference/) – TaW

+0

@Taw Bei erneuter Prüfung meldet Gimp ppi. Gimp meldet jedoch 300 während der Bildberichte 96. –

+0

Siehe meine Antwort für ein __possible__ und wie ich glaube etwas interessantes Beispiel .. – TaW

0

Dies ist eine Möglichkeit, unterschiedliche Ergebnisse aus der gleichen Datei zu erhalten:

Bitmap bmp1 = (Bitmap)Bitmap.FromFile(some300dpiImage); 
    Bitmap bmp2 = new Bitmap(bm1); 

Jetzt bmp1 berichten 300dpi (oder um genau zu sein: ppi) wie erwartet.

Aber bmp2 ist ein neues Bitmap, erstellt aus den gleichen Pixeln, aber mit der aktuellen Bildschirmauflösung und es wird berichten, was die Bildschirmauflösung Ihres Geräts ist. Meine ist 120dpi/ppi.

Hinweis: Dies hat nichts zu tun mit dpi vs ppi - für eine discussion about dpi - ppi see here.

TLTR: dpi im engeren Sinne ist nur bezogen auf Druckhardware. Es gibt keinen Grund, warum Bild-Software irgendetwas anderes als ppi melden könnte. Aber PPI werden fast immer als dpi bezeichnet, so dass wir dasselbe tun können wie Pixelpunkte und umgekehrt.

Verwandte Themen