Es gibt, physikalisch, keinen wirklichen Weg, ohne die DPI zu kennen. Pixel sind diskret, Zoll nicht, wenn Sie in Zoll auf Ihrem Monitor sprechen, müssen Sie (mindestens) die Auflösung (und Pixel-Seitenverhältnis) und die Größe des sichtbaren Monitorbereichs kennen, um Ihre DPI zu berechnen . Die Auflösung ist normalerweise möglich, irgendwo zu holen (ich bin kein C# oder .NET Programmierer, also kann ich Ihnen dort nicht helfen), aber die Größe des Monitors ist normalerweise nicht verfügbar. Wenn eine Schätzung gut genug ist, dann hat der Benutzer die Größe des Monitors eingeben (zB 21" oder was auch immer) und lösen für DPI:
(resX/DPI)^2 + (resY/DPI)^2 = screenDiagonal^2
geben (vorausgesetzt, Sie die Diagonale und die Auflösung wissen)
DPI = sqrt(resX^2+resY^2)/screenDiagonal
Dies ist nur eine Schätzung, wie Monitore nie genau 21 "(.. oder was auch immer), und das Pixel-Seitenverhältnis ist fast nie genau 1: 1.
Wenn Sie Zoll auf Papier sprechen, müssen Sie natürlich die DPI Ihres Druckers (genauer gesagt, die aktuellen Druckereinstellungen) kennen.
DPI von was? Bildschirm? Drucker? ...? –