QT 디자이너에서 만든 양식의 스크린 샷을 만들어야합니다. 스크린 샷 (김프, 가져 오기 등 ..)을 수행하는 데는 여러 가지 방법이 있지만 내 모니터 (약 100dpi)와 동일한 dpi를 사용합니다. 이것은 웹 사이트에 게시하기에 충분하지만 종이 출판물에는 300dpi 이미지가 필요합니다. 300dpi 스크린 샷을 만드는 방법이 있습니까?Linux에서 QT 기반 앱의 고품질 (300dpi) 스크린 샷 캡처
답변
QPaintDevice
에 그림을 적용 할 수 있습니다. 여기에는 QPrinter
이 포함됩니다. 원하는 경우 페인팅 리디렉션을 특정 장치에 설정 한 다음 위젯 자체를 다시 칠하도록 할 수 있습니다. 이렇게하면 더 높은 정밀도를 얻을 수 있습니다. 자세한 내용은 Qt의 웹 사이트에서 페인트 시스템 개요를 확인하고 QPixmap::grabWidget
함수를 살펴보십시오.
위젯 표시보다 더 많은 픽셀을 스크린 샷에 표시 할 수 없습니다.
주어진 위젯 크기 (예 : 900x900px)의 경우 이미지를 300dpi로 인쇄 할 수 있지만 용지에는 3 인치의 정사각형 만 나타납니다.
모니터의 해상도보다 높은 해상도로 스크린 샷을 찍을 수 없습니다. DPI는 컴퓨터 디스플레이에 아무런 의미가 없습니다. 일부 소프트웨어는 종이 출판을 위해 포인트 당 픽셀 (ppp)을 인치당 도트 (dpi)로 변환합니다. 스크린 샷을 만든 후에는 Photoshop 또는 이와 동등한 소프트웨어를 사용하여 300 dpi로 변환 할 수 있습니다.
게시 용 300dpi 요구 사항이 데이터가 본질적으로 픽셀 화되어있는 스크린 샷과 같은 것에는 적합하지 않다고 생각합니다. 이것은 벡터 형식으로 생성 될 수 있고 생성되어야하는 그래프와 같은 것들을 의미합니다.
당신이 할 수있는 최선의 결과를 얻고, 명령 행 I/O 나 결과 그래프가 아닌, 절대적으로 필요한 것에 대해서만 스크린 샷을 사용하십시오.
최종 이미지가 부드럽고 흐리게 보이면 PDF 생성자의 설정을 찾아서이를 방지하거나 이미지를 원래 크기의 배수로 수동으로 날려 원래의 선명한 픽셀을 유지하십시오.
당신은 명령으로 4K 디스플레이로 동작하도록 화면을 강제 할 수 있습니다 : 기본 xrandr를 구성에서 언급 한 바와 같이
xrandr --output eDP1 --rate 40.01 --mode 1366x768 --fb 4096x3072 --panning 4096x3072
remmember가 속도과 모드 필드에 맞게. 그런 다음 xrandr
와 함께 @cjhuitt
import -window root imagefile.png
감사와 함께 스크린 샷을 취득 것을 알 수 있습니다, 그것은 희망 소리! – shuvalov