Произвольное непропорциональное изменение размера изображения

Снова здравствуйте!

Когда наш форум ещё работал на Flarum, было забавно добавлять теги размера для изменения высоты и ширины изображения, чтобы растягивать или сплющивать его, например так (возможно, я неточно помню синтаксис тега):

Я пробовал использовать HTML-аналоги для загруженных изображений в Discourse, но это приводит лишь к обрезке изображения.

Мне не кажется, что в Discourse есть способ сделать это с загруженными изображениями. Не ошибаюсь ли я?

Когда изображение большое и вы меняете его размеры, оно автоматически обрезается из-за CSS-стилей лайтбокса.

Даже если вы измените его размер:

Маленькие изображения можно публиковать с нужным соотношением сторон.

image

image

Возможно, существует какой-то очень хакерский способ, например, использование разрешённого класса для тега <img>, такого как avatar:

<img width="376" height="50" src="https://meta.discourse.org/secure-uploads/original/4X/b/e/6/be6f2ea64830fe0aaec6c192f3b39c38ce5f179c.png" class="avatar">

Но это принудительно добавляет скругление углов.

Оригинал квадратный и вызывает лайтбокс:

Если вы администратор, то, по-моему, самый простой способ — использовать пользовательскую обёртку и определить правило CSS. Например:

[wrap=ratio]
!image|500x300](upload://raEVqkaMNqIXQ9YcsiZuYefukFu.png)
[/wrap]
[data-wrap="ratio"] .lightbox-wrapper img {
    object-fit: unset;
}

Это изображение эмодзи со смеющимся лицом со слезами. (Подписано ИИ)

Меня бы не удивило, если бы существовал способ принудительно задать соотношение сторон для обычного пользователя, или даже более простой вариант для администратора. Возможно, вообще не использовать обёртку и принудительно установить unset для object-fit в div-элементе лайтбокса, но это может нарушить обычную разметку. Я не знаю.