Skip to content(if available)orjump to list(if available)

Show HN: Online Ruler – Measuring in inches/centimeters

Gys

I save a screenshot for my future reference, is perfect. Maybe a suggestion to include in your website. The screenshot also shows the domain so a good way (for me) to find you again if needed

gus_massa

The automatic calibration was like 10% smaller than the real size and I used the credit card method [1] It need to show the "crop lines, no bleed" lines to make the comparison easier https://toastdesignservices.co.uk/resources/what-crop-marks-...

I used something like this before to adjust the zoom in Word or Google Docs with the real size on screen. I prefer to overlap a A4 sheet on the screen. It's semitransparent, so it's easier to see the calibration. Also I'd like to use a transparent rules on the screen and overlap it over the virtual rule for calibration.

[1] For some stupid reason, it sound scary

artiomyak

will adjust it thx

tzs

The calibration with a credit card would I think be easier if one corner of the calibration rectangle was in a fixed position, so moving the slider would only change the other three corners. The fixed rectangle should probably be the one on the bottom left.

artiomyak

Working on a fix

Valgrim

Also my recommendation: -Make the card vertical instead of horizontal (phones are held vertically) -Add a +/- bottom on each end of the slider for fine tuning the ppi by 0.1 increment or lower, -Allow to manually change the value in the field

LukeShu

Fascinating.

My setup: Firefox on X11 on a ThinkPad E15 Gen 2, with X11 misconfigured such that it is 96 DPI instead of the physically-correct 144 DPI.

On initial load, it has the green calibrated box saying "Detected: 24″ FHD Monitor (Auto-calibrated)", and my credit card measures as 131mm. This more-or-less the error that I'd expect given my misconfiguration: 131mm/85.6mm =~ 1.53 ; 144dpi/96dpi = 1.5. (Given those numbers, I figure it should be closer to 23" than 24", but whatever.)

But if I tell it "Standard Laptop", then my credit card measures as 97mm. (97mm/85.6mm =~ 1.13). I can't guess how that number is being arrived at. IME lots of X11 users will have their DPI misconfigured as either 96 DPI or (less likely) 192 DPI, but also lots of non-Apple laptops will have a pixel density of 40%-65% more than 96 DPI (on the rationale that lots misconfigured-as- or hardcoded-as- 96 DPI is common, that things designed to look good at 96 DPI assume a desktop monitor about 28" from your face (CSS3 defines device-independent pixels as such), but laptop use puts the screen 17"-20" from your face; and 28in/20in gives us a factor of 1.4 and 28in/17in gives us a factor of 1.65. But none of these numbers give me the factor of 1.13 that you show me. A good mystery!

johnisgood

Take a look at https://anruler.com/js/ruler.js, specifically from the autoDetectDevice function.

rchard2scout

This seems really inaccurate to me. I had to manually enter my device (Galaxy A55 5G), and then I held a tape measure next to my phone. What the site claimed was 16cm was actually only 14.3cm.

smarx007

A55 5G has a 6.6 inch screen. Also had to enter manually, but it was pretty accurate, fraction of a mm off on 12cm.

artiomyak

I'm currently working on fix of all this issues :)

gnarlouse

Petition to change the foot to be the distance light travels in one nanosecond

madcaptenor

At the same time, the meter should be redefined so the speed of light is 300000 km/s. This would have the side effect of making the inch exactly 2.5 cm.

IcyWindows

I've been calling that a "metric foot" :)

turtlebits

FYI, the calibration modal is unreadable in dark mode.

artiomyak

Fixing it :)

brainwad

96dpi seems like a bad default for mobile devices. The CSS spec says the reference pixel (https://www.w3.org/TR/css-values-3/#reference-pixel) should be 96dpi at ~28" viewing distance. But handheld devices are presumed to not be seen that far away and so are built with a DPI closer to 160 (after dividing by the device pixel ratio).

mkl

Diagonal measurements aren't accurate with screens with rounded corners. I suggest adding a width-and-height calibration method. Calibration with a ruler would be good too; sit the ruler on the screen and zoom/pan(/rotate?) with multi-touch.

artiomyak

Adding it, will fix

willtemperley

Cool. This is actually really useful - I'm building a document editor at the moment. I think having the option for real-world size would be a nice feature.

I've been busy measuring different document editors with a screenshot of the ruler and it seems they all have different interpretations of A4 width (210 mm) at 100% on a Macbook Pro 16in:

- Apple Pages shows about 118mm

- Google docs shows 160mm in Safari

- Linearity Curve gives about 200mm

kasbah

Is it not possible to use `window.devicePixelRatio` instead of calibration?

https://developer.mozilla.org/en-US/docs/Web/API/Window/devi...

brainwad

Not really. All major browsers just use the value the OS gives them, which is usually rounded to 0.5 or 0.25, which helps keep integer CSS px values an integer number of device pixels. So you could be off as much as 12% if you are on a device that rounded down from 1.12 to 1.0.

Also, even if they didn't, there's no standard for what the correct DPI should be for a device; it theoretically should depend on viewing distance, but it's impractical to constantly change the screen DPI depending on how far away the user's eyes are :)

OP could, however, use a better default than 96 DPI for mobile devices. Most are targeting ~160-ish.

chrismorgan

> All major browsers round this to 0.5 or 0.25, which helps keep integer CSS px values an integer number of device pixels.

This is completely false. No browser that I know of does any such thing, nor would it make any sense to do so (nor would it achieve the goal you specify to any meaningful extent).

The closest thing that does happen is that browsers use integer fractions of pixels as their basic layout unit: Firefox and its kin sixtieths, Chrome and its kin sixty-fourths.

But the rest of your answer is correct; and to add a proper citation: “the reference pixel is the visual angle of one pixel on a device with a device pixel density of 96dpi and a distance from the reader of an arm’s length” <https://drafts.csswg.org/css-values-4/#reference-pixel>.

brainwad

Maybe it's better to say that browsers just take what the OS tells them, rather than actually deriving a device pixel ratio from first principles according to the CSS spec. Because, yeah, there's some weird devices with DPRs like 2.625, though _most_ are multiples of 0.25: https://yesviz.com/viewport/. But note how the same DPR can give a varying CSS PPI, which makes using it useless for this purpose.

tiffanyh

Cool idea and I can see myself using this.

My iPhone 14 Pro was incorrectly identified as an iPhone 11 though.

Maybe it doesn’t matter since both have the same screen size, but it can be confusing since the wrong model identified even if it’s the same size.

https://www.apple.com/au/iphone/compare/?modelList=iphone-11...

artiomyak

Will fix it :)