대체 텍스트가 없으면 이미지 스케일링이 작동하지 않음

의도된 동작인지 버그인지 확실하지 않지만, 최근(한 주쯤?) 업데이트 이후로 이미지에는 alt 텍스트가 없는데도 예전에는 작동하던 % 버튼(이미지 크기 조절용)과 실제 크기 조절 기능이 더 이상 작동하지 않습니다.

게시글에 여러 이미지가 있고 그중 하나에 alt 텍스트가 없다면, 해당 이미지의 % 버튼을 클릭하면 alt 텍스트가 있는 다른 이미지의 크기가 변경됩니다. (수정: alt 텍스트가 필요했다 해도 이런 일이 일어나서는 안 되므로 카테고리를 #contribute:bug로 변경했습니다)

다음은 작동하지 않지만, 예전에는 작동했습니다:
![690x184, 40%](upload://hash)

예상대로 이미지 크기 앞에 alt| 부분을 추가하면 문제가 해결됩니다.

이 문제를 적응시키기 위해 일부 토픽을 업데이트해야 하는데, 그렇지 않으면 나중에 다시 빌드될 때 이 이미지들이 100% 크기로 표시될 수 있습니다. 다른 분들도 같은 상황에 처할 수 있을 것 같아 이 게시글을 올립니다.

1개의 좋아요

재현 가능. 대체 텍스트를 제거하면 이미지 스케일링이 깨집니다.

2개의 좋아요

음, @sam님 이 문제에 대해 어떻게 생각하세요?

1개의 좋아요

이 기능이 대체 텍스트 없이 제대로 작동한 적이 없다고 생각합니다. 지원할 수도 있겠지만,

2개의 좋아요

사실 작동은 했습니다. 제 인스턴스에는 올바른 스케일링이 적용되어 있지만 alt 텍스트가 없는 주제들이 여러 개 있습니다. 이 중 아무 주제든 다시 렌더링(rebake)하면 스케일링이 사라집니다.

수정: 이 변경 사항과 관련이 있을까요?

다만, 게시글 렌더링(post cooking) 시 차이를 설명할 만한 내용은 찾지 못했습니다.

해당 주제들을 직접 편집하는 것에는 문제가 없으나, 다른 사용자들도 비슷한 상황에 직면할 수 있으며, alt 속성이 없는 이미지의 리사이즈 컨트롤이 다른 이미지의 스케일을 변경해서는 안 됩니다.

알겠습니다. 이전에 정상적으로 작동했다면 100% 믿겠습니다.

@david 이 부분이 회귀 버그(regression)의 원인이었을 수도 있겠네요. 수정이 그렇게 어렵지 않을 것 같은데?

4개의 좋아요

네, 이 변경 사항은 제 것인 것 같습니다. 이전 구현은 버그라고 생각했거든요. 우리의 모든 테스트는 차원이 | 문자 뒤에 위치한다고 가정합니다:

기존 동작으로 되돌리고, 그 동작이 계속 유지되도록 테스트를 추가할 수 있습니다. 하지만 그렇게 하면 123x123과 같은 대체 텍스트를 가진 이미지를 사용할 수 없게 됩니다.

@renato 마크다운에 파이프 문자가 없는 상태가 된 과정을 아시나요? 제 지식 범위 내에서는 모든 UI 옵션이 파이프 문자를 생성해야 합니다 :thinking:

6개의 좋아요

네, 이 동작을 발견한 게시물들은 모두 UI에서 사전 테스트된 프리셋 원본 콘텐츠를 사용하여 API로 생성된 것이었습니다. 스크린 리더에서 큰 의미가 없을 두 이미지의 대체 텍스트(alt text)는 의도적으로 제거했습니다.

최종적으로 그렇게 결정하신다면 새로운 동작에 맞춰 적응하는 데 문제가 없습니다.

오프토픽: 제 플러그인을 영감으로 삼기 위해, [something]을 원본 콘텐츠로 변경하는 플러그인을 추천해 주실 수 있을까요? 이렇게 하면 해당 모든 주제에 대해 한 번 더 편집을 수행할 수 있고, 나중에 다시 변경이 필요할 경우 리베이킹만으로도 충분할 것입니다.

2개의 좋아요

네, 여기서는 새로운 방식에 적응하는 것이 더 나은 것 같아요. 애초에 이 기능을 지원할 의도는 없었거든요. 더 많은 포맷을 지원하게 되면 백엔드 코드가 더 늘고 테스트도 더 해야 하니까요.

가장 간단한 방법은 db remap을 사용하는 것입니다. 참고: Replace a string in all posts - Self-Hosting - Discourse Meta

3개의 좋아요

알겠습니다. 그러면 확대/축소 버튼은 확대/축소가 가능한 이미지에서만 표시되도록 하도록 하겠습니다.

아 네, 이 특정 변경 사항에 대해서는 제가 이렇게 처리할 수 있겠네요. 감사합니다. 어쨌든 외부 서비스에서 관리되는 미리 정의된 원시(raw) 콘텐츠가 있는 곳이 여기가 유일하지는 않은데, poll 플러그인에서 몇 가지 아이디어를 얻을 수 있을지 모르겠습니다. 혹은 더 간단한 플러그인이 떠오르신다면 알려주시면 좋겠습니다.

감사드리며, 이렇게 작은 문제에 대해 많은 소음을 일으킨 점 죄송합니다.

3개의 좋아요

전혀 그렇지 않습니다. 이 문제를 알려주셔서, 그리고 저희에게 이렇게 인내심을 가져주셔서 감사합니다.

3개의 좋아요