gerhard
(Gerhard Schlager)
1
HiDPI 디스플레이를 150% 확대 비율로 사용 중입니다. 스크린샷을 찍어서 Discourse에 붙여넣을 때마다 이미지가 너무 크게 보입니다. 보기 좋게 보이려면 수동으로 이미지에 확대/축소 비율을 적용해야 합니다.
110x110px 크기의 다음 박스에 대한 스크린샷을 만들었다고 가정해 보겠습니다.
그 스크린샷을(Ctrl+V) 작성기에 붙여넣으면 167x167px 크기의 이미지가 됩니다.

이상적으로는 제가 축소해야 할 정확한 비율(제 경우 66%)을 기억하지 않아도 정확한 크기의 이미지를 얻을 수 있어야 합니다.

이를 위한 2가지 옵션을 제안합니다. 확대 비율이 1이 아닌 경우:
- 이미지 마크다운에 올바른 확대 비율을 자동으로 추가합니다.

또는
- 미리보기 창의 이미지 도구 상자에 올바른 확대 비율을 추가합니다.

확대 비율은 JavaScript로 계산할 수 있습니다:
Math.floor(100 / window.devicePixelRatio)
6개의 좋아요
pmusaraj
(Penar Musaraj)
2
정말 좋은 아이디어네요. 저도 항상 이 문제로 고생하고 있어요.
생각을 정리해 보면, 사용자가 스크린샷이 아닌 이미지를 복사/붙여넣을 경우 오탐(false positive)이 발생할까요?
또한 구현 방식에 대해, 1번과 2번을 동시에 할 수 없는 이유가 뭔지 모르겠어요.
4개의 좋아요
gerhard
(Gerhard Schlager)
3
네, 스크린샷이 아닌 이미지를 붙여넣을 경우 오탐으로 처리됩니다. 스크린샷과 다른 이미지 중 어떤 것이 더 자주 삽입되는지 궁금하네요. 
1개의 좋아요
pmusaraj
(Penar Musaraj)
4
정확히는 모르겠고, 사용자와 업로드하는 사진의 종류에 따라 달라질 것 같아요. 가끔은 폰에서 이미지를 복사해서 데스크톱에 붙여넣기도 하니까, 그런 상황도 고려해야 해요.
어쨌든, 옵션 2로 시작하면 위양성 문제를 피할 수 있고, 미리보기에서 더 나은 기본 대안 크기를 제공할 수 있을 거예요.
1개의 좋아요
david
(David Taylor)
5
화면 캡처 도구가 PNG 파일에 DPI와 관련된 정보를 인코딩하는 것 같습니다. 예를 들어, 저의 고해상도 macOS 환경에서 촬영한 스크린샷을 https://www.metadata2go.com/ 에 업로드하면 다음과 같은 내용이 표시됩니다.
HiDpi를 꺼두면 해당 메타데이터 필드가 파일에서 사라지는 것처럼 보입니다.
@gerhard 님은 Windows에서 비슷한 현상을 확인하시나요? 그렇다면 JS로 이를 읽어 픽셀 밀도를 추정하는 방법이 있을지도 모릅니다.
아래 링크의 gist도 유용할 수 있을 것 같습니다.
2개의 좋아요
Falco
(Falco)
6
저도 원격 애니메이션 PNG가 애니메이션을 잃는 문제를 조사하고 있어, PNG의 첫 몇 바이트를 파싱하는 작업이 필요합니다. 따라서 이 부분에 대한 훅(hook)에 여러 가지 사용 사례가 있습니다.
2개의 좋아요
gerhard
(Gerhard Schlager)
7
Linux에서 Spectacle를 사용 중인데 메타데이터에 아무것도 추가되지 않는 것 같습니다.
해당 gist의 코드는 Linux 시스템에서 150% 스케일 팩터로 생성한 스크린샷에 대해 false를 반환합니다. 해당 이미지의 pHYs 청크는 다음과 같습니다:
{ xDpu: 3780, yDpu: 3780, xDpi: 96, yDpi: 96, unit: 'meter' }
3개의 좋아요