노트북의 모니터 크기를 어떻게 알 수 있습니까?


답변:


46

를 사용하는 또 다른 옵션 xrandr은 다음 명령입니다.

xrandr | grep ' connected'

산출:

DVI-I-1 connected primary 1680x1050+0+0 (normal left inverted right x axis y axis) 473mm x 296mm
VGA-1 connected 1280x1024+1680+0 (normal left inverted right x axis y axis) 376mm x 301mm

(전에 공간을 신경 connected다른, disconnected포함됩니다)

사이의 중요한 차이 xdpyinfoxrandr

  • xrandr화면을 개별적으로 나열 하는 동안 (여러 모니터의 경우) xdpyinfo모든 화면에 대해 하나의 단일 차원 세트를 함께 출력합니다 (화면 크기 대신 "데스크톱 크기").
  • @ agold에서 알 수 있듯이 두 가지 사이의 차이가 있습니다. 단순한 반올림 차이가 되기에는 너무 큽니다.

    xrandr: 473mm x 296mm
    xdpyinfo: 445x278
    

그것은 관련된 것 같다 버그 에서 xdpyinfo. 여기도 참조 하십시오 .

인치를 고집한다면

아래의 작은 스크립트를 사용하십시오. 화면의 크기를 인치 단위로 출력합니다. 너비 / 높이 / 대각선 (인치)

#!/usr/bin/env python3
import subprocess
# change the round factor if you like
r = 1

screens = [l.split()[-3:] for l in subprocess.check_output(
    ["xrandr"]).decode("utf-8").strip().splitlines() if " connected" in l]

for s in screens:
    w = float(s[0].replace("mm", "")); h = float(s[2].replace("mm", "")); d = ((w**2)+(h**2))**(0.5)
    print([round(n/25.4, r) for n in [w, h, d]])

그것을 사용하려면 :

스크립트를 빈 파일에 복사하고로 저장 get_dimensions.py한 후 다음 명령으로 실행하십시오.

python3 /path/to/get_dimensions.py

내 두 화면에 출력 :

width - height - diagonal (inches)

[18.6, 11.7, 22.0]
[14.8, 11.9, 19.0]



편집하다

다음과 같은 동일한 스크립트의 멋진 버전 (몇 가지 개선 사항과 더 나은 출력)

Screen  width   height  diagonal
--------------------------------
DVI-I-1 18.6    11.7    22.0
VGA-1   14.8    11.9    19.0

스크립트 :

#!/usr/bin/env python3
import subprocess
# change the round factor if you like
r = 1

screens = [l.split() for l in subprocess.check_output(
    ["xrandr"]).decode("utf-8").strip().splitlines() if " connected" in l]

scr_data = []
for s in screens:
    try:
        scr_data.append((
            s[0],
            float(s[-3].replace("mm", "")),
            float(s[-1].replace("mm", ""))
            ))
    except ValueError:
        pass

print(("\t").join(["Screen", "width", "height", "diagonal\n"+32*"-"]))
for s in scr_data:
    scr = s[0]; w = s[1]/25.4; h = s[2]/25.4; d = ((w**2)+(h**2))**(0.5)
    print(("\t").join([scr]+[str(round(n, 1)) for n in [w, h, d]]))

편집 2 (2019 년 5 월)

요청시 (주석으로), 현대화 / 고급 / 개선 (시스템 호출, 구문 분석은 없지만 Gdk.Display 사용) 버전은 거의 동일하게 수행됩니다.

#!/usr/bin/env python3
import gi
gi.require_version('Gdk', '3.0')
from gi.repository import Gdk

dsp = Gdk.Display.get_default()
n_mons = dsp.get_n_monitors()

print(("\t").join(["Screen", "width", "height", "diagonal\n"+32*"-"]))

for i in range(n_mons):
    mon = dsp.get_monitor(i)
    mon_name = mon.get_model()
    w = mon.get_width_mm()/25.4
    h = mon.get_height_mm()/25.4
    d = ((w**2)+(h**2))**(0.5)
    print(("\t").join([mon_name]+[str(round(n, 1)) for n in [w, h, d]]))

산출:

Screen  width   height  diagonal
--------------------------------
eDP-1   20.0    11.3    23.0
HDMI-1  18.6    11.7    22.0

오랜 시간이 지난 후에도 기존 투표를 생성 한 답변을 제거하는 것은 부적절 해 보이기 때문에 원래 답변을 그대로 두겠습니다.


참고 사항이지만 두 가지 답변 모두 다른 결과를 xdpyinfo제공합니다. "474x303 밀리미터"및 xrandr"473mm x 296mm"를 제공합니다.
agold

1
@agold 이제 흥미 롭습니다. 반올림 차이. 또 다른 흥미로운 점은 화면 크기가 아닌 데스크탑 크기 (두 화면 모두) 를 xdpyinfo출력 한다는 것입니다 !
Jacob Vlijm

@ agold 차이는 반올림 차이에 비해 너무 큽니다! 내 편집을 참조하십시오.
Jacob Vlijm

예, 상당히 큽니다. 그러나이 프로그램들은 어떻게이 정보를 얻습니까? 모니터에서 나오는 일부 메타 정보입니까 아니면 다른 매개 변수를 기반으로 추정됩니까?
agold

@agold 버그와 관련이있는 것 같습니다 xdpyinfo: bugs.launchpad.net/ubuntu/+source/xorg-server/+bug/201491 보고서는 상당히 오래되었지만 수정 된 것으로 보이지는 않습니다. 참조 : bbs.archlinux.org/viewtopic.php?id=204823
Jacob Vlijm

14

좀 더 일반적인 대답을 원한다면 gordian knot을 자르고 괴짜가 아닌 물리적 통치자를 사용할 수 있습니다. 당 위키 의 "스크린 크기는 일반적으로 그것의 길이에 의해 설명된다 대각선 "

여기에 이미지 설명을 입력하십시오

센티미터 만 표시하는 눈금자가 있으면 간단한 변환을 사용할 수 있습니다 .

1 cm = 0.393701 in
(or 2.54 cm = 1 in)

당신의 통치자가 30 센티미터를 측정하면 화면은 11.811 인치입니다. 양식의 검색어와 함께 Google 을 사용할 수도 있습니다 30 cm to in.


이미지 크레디트 : https://en.wikipedia.org/wiki/File:Display_size_measurements.png


Ask Ubuntu는 소프트웨어 솔루션을위한 사이트이므로 귀하의 답변은 여기서 조금 벗어난 주제입니다. :-) 그래서 upvoted!
Fabby

1
@ dn-ʞɔɐqɹW : 사실, 그것은 내 편에있는 실수를 기반으로합니다. 나는 "노트북의 모니터 크기를 어떻게 구할 수 있습니까?"라는 질문을 읽었으며, 첫 번째 생각은 "자, 잘 통치자"였으며, 완전한 질문을 읽기 전에 돌 블록을 조각했습니다.
phresnel

참고로 1 인치는 정확히 25.4mm입니다.
Paddy Landau

6

XdpyinfoX 서버에 대한 정보를 표시하는 유틸리티입니다. 서버의 기능, 클라이언트와 서버 간 통신에 사용되는 다양한 매개 변수에 대한 사전 정의 된 값, 사용 가능한 여러 유형의 화면 및 비주얼을 검사하는 데 사용됩니다.

모니터 크기를 얻는 명령은 다음과 같습니다.

xdpyinfo | grep dimensions

결과

dimensions:    1366x768 pixels (361x203 millimeters)

1
안녕하세요 Parto, 나는 정말 당신의 대답 +1처럼, 그러나, 이쪽을 봐 : bbs.archlinux.org/viewtopic.php?id=204823거대한 크기의 차이 xdpyinfo보고서 및이 xrandr.
Jacob Vlijm

@Jacob 뭔가 흥미로운 것 -askubuntu.com/questions/378386/…
Parto

1
좋은 오래된 물리적 품질 테이프 측정으로 측정 할 때, 나는 나의 화면의 거의 정확히 출력을 얻을 수 xrandr있는 동안, 473mm : xdpyinfo보고서 방법이 너무 짧다 ( 445mm). 이 질문은 OP가 생각한 것보다 더 흥미로운 것으로 판명되었습니다 :)
Jacob Vlijm

0

이것은 나도 어려움을 겪고 있었으며 (내 자신을 위해 새로운 모니터로 업그레이드하고 이전 모니터의 크기를 알고 싶을 때) 모니터 크기를 찾는 쉘 스크립트를 작성했습니다.

xdpyinfo첫 번째 답변에서 from을 사용하여 화면 크기를 가져 와서 앞서 작성했습니다. 스크립트는 기본적으로 화면 크기에서 대각선을 계산하여 밀리미터에서 인치로 변환하고 결과를 표시합니다.

리포지토리 URL : https://github.com/abhishekvp/WhatsMyScreenSize

도움이 되었기를 바랍니다!

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.