Я провожу довольно много времени, задавая вопросы и отвечая на вопросы во многих сообществах, ориентированных на образование / обучение. Более поздние форумы используют Markdown, но все еще существует довольно много форумов, использующих BBCode в качестве интерфейса разметки, включая мою школу.
Чтобы избавить себя от головной боли, я использую программное обеспечение для редактирования уценки (Obsidian), чтобы написать свои вопросы/ответы/ответы. В тех случаях, когда местом назначения является форум BBCode, я хочу использовать сценарий оболочки, который принимает файл Markdown в качестве входных данных и создает версию BBCode, сохраняя вывод в моем буфере обмена.
Следующий фрагмент может быть файлом уценки, я включаю любые медиафайлы (изображения или гифки), которые мне нужны, вместе с размерами:
One thing 1PP (1 Point Perspective) and 2PP (2 Point Perspective) will always have in common are the vertical lines, they are always true verticals:
![500x100](https://i.imgur.com/lTH5gg6.gif)
The above(1PP), the Y-axis of the box are paralell with the red, vertical lines. Its also the same for the below (2PP), the Y-axis of the box are paralell with the red, vertical lines
![500x100](https://i.imgur.com/ObMTgv0.gif)
Сценарий просто проанализирует файл Markdown и вернет вывод, подобный следующему:
One thing 1PP (1 Point Perspective) and 2PP (2 Point Perspective) will always have in common are the vertical lines, they are always true verticals:
[imgwh=500,100]https://i.imgur.com/lTH5gg6.gif[/imgwh]
The above(1PP), the Y-axis of the box are paralell with the red, vertical lines. Its also the same for the below (2PP), the Y-axis of the box are paralell with the red, vertical lines:
[imgwh=500,100]https://i.imgur.com/ObMTgv0.gif[/imgwh]
Я написал 90% сценария оболочки и работает очень хорошо. Я застрял в поиске согласованных средств для изменения размера изображений в BBCode. После некоторых поисков я узнал, что теги для изменения размера изображений не являются стандартной функцией на форумах, использующих BBCode. Например, один форум поддерживает изменение размера мультимедиа с помощью тега, такого как [imgwh]
(пример выше), в то время как многие другие этого не делают, вы можете только разместить изображение.
При дальнейшем поиске я наткнулся на ЭТО решение, но оно не идеально, мне действительно нужно средство, позволяющее определять как ширину, так и высоту. Также я хочу избежать абстрагирования размеров от S
, M
, L
и т. д.
Я также экспериментировал с FFMPEG/ImageMagick, чтобы изменить размер мультимедиа до желаемых размеров, прежде чем загружать их на веб-сайт. Результаты ужасны и очень медленны, особенно для файлов GIF. У меня нет быстрого компьютера, но у меня есть быстрый интернет.
Можно ли использовать разметку HTML, чтобы «заставить» BBCode вставлять изображения с определенными размерами? Я не знаю никакого HTML, но если бы это было возможно, я бы его выучил. Если нет, то есть ли веб-сайты для размещения изображений, на которых вы можете запросить размер изображения в самом URL-адресе, например:
https://i.imgur.com/lTH5gg6_W500xH100.gif
Любая помощь или просто указание меня в правильном направлении, будет принята с благодарностью!
HTML, конечно, может поместить изображение любого размера, который вы хотите, и стоит попробовать, например. <img src = "https://i.imgur.com/lTH5gg6.gif" width = "500" height = "100">
.
Тем не менее, я думаю, что большинство сайтов не разрешают прямой HTML-код в bbcode (хотя не цитируйте меня по этому поводу, я вообще не использовал bb-код), и, поскольку вы не контролируете сайт, вы не должны быть в состоянии чтобы изменить фактический html, который в конечном итоге отображает изображение.
Вы проверили это? Они используют оба
[img=100x50]
и
[img width = "100" height = "50"]
изменить размер.
Я думаю, вам, возможно, придется принять тот факт, что вашему сценарию потребуется какой-то аргумент для изменения вывода в зависимости от версии/реализации BBCode. Как говорится на моем связанном сайте, BBCode не является строгим стандартом. Я не думаю, что вы найдете метод, который работает для всех BBCode.
Тогда, если вы не можете найти подобный сервис хостинга изображений (я не смог быстро погуглить), вы всегда можете реализовать свой собственный :)
Вы можете использовать прокси-сервер для изменения размера изображения. Это веб-сайты, которые будут изменять размер изображения на лету с помощью кэширования.
Есть довольно много бесплатных, но, например, weserv действительно прост, очень быстр и надежен.
Например, в Википедии есть это ужасное изображение размером 14 000 x 1 500 пикселей:
https://upload.wikimedia.org/wikipedia/commons/8/87/Chicago_Skyline_Hi-Res.jpg
Вы можете попросить изменить его размер до 500 пикселей следующим образом:
Попробуйте перейти по ссылке. Вы можете делать гораздо больше, чем просто изменять размер изображений, проверьте документы.
https://images.weserv.nl/docs/quick-reference.html
Хе-хе, вы переоцениваете мою компетентность, тем не менее спасибо.