Pixel MM-Gleichung?
Gibt es eine zuverlässige Gleichung zu arbeiten, pixel-Größe in MM? Oder ist das nicht möglich, cross-Gerät?
Arbeiten wir mit einem maßgeschneiderten system, das Inhalte auf vielen Geräten mit unterschiedlichen Bildschirmgrößen, kann es erkennen, die Bildschirm Breite in MM, aber wir möchten, genau zu konvertieren dieser pixel-Größe zu liefern, richtig große Bilder, die dynamisch mit einem einfachen jquery-Skript!?
Irgendwelche Ideen?
Cheers
Paul
- sagen Sie, dass Sie bereits die Bildschirm Breite in MM? und Sie brauchen nur die Breite des Bildschirms in Pixel?
- ja 32bitkid, das ist, was ich brauche
Du musst angemeldet sein, um einen Kommentar abzugeben.
Was ich getan habe :
Dann:
tl;dr: Wenn Sie nicht wissen, die DPI des Geräts, werden Sie nicht in der Lage, ableiten, wie groß ein pixel ist in der realen Welt.
Pixel auf Ihren eigenen nicht realen Maßeinheiten.
So können Sie zu einem real-world-Messung, wenn Sie berücksichtigen die DPI-Wert des Geräts, das zeigt Sie.
Die Formel ist:
mm = ( pixels * 25.4 ) /DPI
Also 8 Pixel der Anzeige auf einem 96-DPI-Bildschirm-Einstellung:
( 8 * 25.4 ) /96 = 2.116mm
All dies vorausgesetzt, das Gerät wird nicht skaliert/gezoomt.
Würden Sie brauchen, zu wissen, die DPI des Geräts, und wenn die Anzeige skaliert wird oder nicht. Das würde bedeuten, dass Sie haben, um eine Datenbank der physischen Abmessungen und Auflösungen der einzelnen Geräte.
Können Sie nicht zuverlässig berechnen, da es keine Möglichkeit zu erkennen, physikalische Bildschirmgröße.
alte post, aber ich stolperte über dieses heute und hatte es zu schaffen.
der trick ist, erstellen Sie ein element mit den Abmessungen Stil die in Zoll und verlangen, dass seine Breite, dies gibt Ihnen die px pro Zoll.
nun, wenn Sie brauchen, Millimeter, nur
px2inch(10)*25.4
.Keine Notwendigkeit für jQuery.
Bitte beachten Sie, dass Werte in Pixel, je nachdem, welche Auflösung dem browser von dem Gerät erzählt Sie. Einige Browser (auf einigen Telefonen) liegen über dies und sagen Sie etwas anderes als die aktuelle Bildschirmauflösung in einem Versuch, um die Kompatibilität mit älteren Seiten. Wichtigste Sache ist nie port conversion-Werte von einem Gerät zum anderen, aber immer mit real-time-Berechnungen. Sogar auf einem desktop-PC kann der Benutzer die Bildschirmauflösung ändern.
Erfahren Sie mehr über die Einheiten, schauen Sie sich dieses (kurzen) Artikel zu W3:
https://www.w3.org/Style/Examples/007/units.en.html
Basiert auf der @Dawa Antwort oben, das ist meine Lösung:
Beachten Sie, dass die 100mm Höhe, erhalten Sie eine bessere precision-Faktor.
Die Berechnung wird sofort und der div wird nicht angezeigt. Keine Notwendigkeit für jQuery
benutze ich diese einfache Funktion
test gibt es 300,600,900 DPI
DEMO : https://jsfiddle.net/xpvt214o/29044/