게시물에 이미지를 첨부하면 Discourse는 표시하기에 적합한 썸네일을 만들기 위해 이미지를 리사이즈합니다.
이 과정에서 버그가 있는 것으로 보이며, 이로 인해 일관되게 위쪽과 아래쪽 픽셀 행이 사라집니다.
큰 문제는 아니지만, 얇은 테두리가 있는 요소들이 이상해 보입니다. (예: 대부분의 Windows 10 소프트웨어 스크린샷은 창 하단 가장자리가 없기 때문에 잘못 보입니다.)
관찰 결과:
-
종횡비 문제인 것 같지 않으므로, 매우 넓거나 긴 이미지를 의도적으로 자르는 것이 아니라 버그로 보입니다.
-
실제 썸네일 이미지 리소스에서 픽셀이 누락된 것을 확인했습니다. 따라서 브라우저에서 표시될 때 발생하는 것이 아니라, 백엔드에서 썸네일이 생성될 때 발생하는 것입니다.
-
수정: 위쪽/아래쪽 픽셀이 완전히 사라지는 것은 아니지만, 너무 혼합/흐려져서 사실상 사라진 것과 같습니다. 리사이즈 알고리즘이 이미지 가장자리를 처리하는 방식과 관련이 있을까요? 세로형 종횡비의 스크린샷처럼 왼쪽과 오른쪽 가장자리에는 절대 발생하지 않는 것 같습니다.
-
원본 크기 이미지를 클릭하면, 적어도 그것은 올바르게 표시됩니다.
아래 예시 이미지가 이 Discourse 포럼에서 문제를 재현하기를 바랍니다:
이것은 모든 쪽에 1픽셀의 빨간색 테두리가 있는 흰색 이미지여야 합니다. 여기서 문제가 발생하면, 원본 크기 이미지를 클릭할 때까지 왼쪽과 오른쪽 테두리만 보입니다.
(수정: 여기서도 실제로 발생하는 것 같습니다.)
만약 발생하지 않는다면, 제 포럼에서 확인한 결과는 다음과 같습니다:
이것을 테스트할 때는 게시 후 잠시 기다려야 합니다(때로는 스레드를 새로고침해야 합니다). 서버 측에서 썸네일이 생성되는 데 몇 초가 걸리기 때문입니다.
4개의 좋아요
네, 저도 꽤 오랫동안 이 문제를 알아채고 있었습니다. 어떻게 해결할 수 있을지 확실하지 않네요.
1개의 좋아요
riking
(Kane York)
3
흥미롭네요. 상단, 좌측, 우측은 보이지만 하단은 보이지 않습니다.
| chrome://gpu |
|
| Chrome 버전 |
Chrome/87.0.4280.141 |
| 운영 체제 |
Windows NT 10.0.19042 |
| GL_RENDERER |
ANGLE (Intel(R) HD Graphics 620 Direct3D11 vs_5_0 ps_5_0) |
1개의 좋아요
화면 크기에 따라 다른 클라이언트에 서로 다른 에셋이 제공되는 것일 수 있습니다.
F12를 통해 위의 게시물/이미지를 간단히 살펴본 결과, 원본 이미지 외에 두 가지 에셋을 발견했습니다:
-
원본 이미지 (1416 x 946) /original/3X/e/2/e2c5f032e18fa374c0593af71cf25d3499826289.png, 이는 그대로 유지되어 있습니다. 직접 URL
-
더 작은 버전 (1380 x 920) optimized/3X/e/2/e2c5f032e18fa374c0593af71cf25d3499826289_2_1380x920.png, 이는 (거의) 보이지 않는 상단과 하단 가장자리가 있습니다. 직접 URL
-
더 작은 버전 (640x460) optimized/3X/e/2/e2c5f032e18fa374c0593af71cf25d3499826289_2_690x460.png, 이는 하단 테두리가 전혀 없지만 왼쪽, 상단, 오른쪽 테두리는 있습니다. 직접 URL
ImageMagick 인수를 조정하여 스케일링 알고리즘과 가장자리 픽셀 처리 방식을 수정할 수 있지만, 어떤 변경 사항이든 이 상황을 개선하는 대신 다른 상황을 악화시킬 수 있습니다.
1개의 좋아요
네, 저도 같은 생각입니다. 스케일링 알고리즘 문제입니다. 원래 버전이 유지되는 한, 여기서 심각한 문제는 보이지 않으므로 기능 요청으로 이동하겠습니다.
4개의 좋아요