IPB

Здравствуйте, гость ( Вход | Регистрация )

 ??????? ????? ?????? Правила поведения на форуме. Несоблюдение правил карается.
 
???????? ? ??? ??????????? ????? ????
Вывод картинки в консоль, Cоздание конфига при загрузке которого выводится картинка в консоли
nL-xajA
сообщение 27.07.2015 - 15:37
Сообщение #1





Группа: Пользователи
Сообщений: 919
Регистрация: 8.06.2005
Из: Russia, Voronezh
Пользователь №: 730



Нам понадобятся следующие программы:
  1. Photoshop + картинки + палитра 10-ти кваковских цветов (прикреплена к посту);
  2. ASCII Art Generator;
  3. Opera + html страничка, производящая автозамену (прикреплена к посту).
Порядок действий:

1) Поиск нужной картинки и приведение ее до размеров высотой примерно 30-32 пикселя (строки)

Подходящие картинки легко находятся по запросу в поисковике ”pixel art”, ”8-bit pictures” и тому подобных. Хорошие картинки так же получаются из скринов с 8ми битных игр, что легко сделать через соответствующие эмуляторы. Т.к. разрешение выдаваемое NES было 256Ч240 (224), а большинство отдельных объектов и игровых персонажей по высоте было не более 10% размера экрана, все это добро можно «перенести» в консоль кваки без масштабирования. К слову о масштабировании, изменять масштаб надо обязательно кратно степени двойки (в 2/4/8/16 и т.д. раз) чтобы сохранить оригинальные пропорции изображения.
Изображение желательно делать высотой не более 30-32 пикселей, т.к. на всех серваках стоит защита от флуда. На самом лояльном к подобному арту российском сервере (дело в exe’шнике) опытным путем было установлено, что при использовании wait 20 после вывода каждой строки изображения, на 31 строчке вас уже «замьютит». Поэтому при большем числе строк изображения соответствующе увеличиваем wait, который, опять же, подбираем опытным путем. На других серваках wait приходится ставить от 200, поэтому для них это дело становится неактуальным).
Использование wait так же важно потому, что его использование помогает не создавать лага при «выводе изображения».

2) Преобразование палитры цветов картинки в палитру цветов кваки, т.е. надо чтобы изображение состояло только из 10ти цветов доступных в кваке.

Файлы палитр на 10 и 11 цветов прикрепляю сразу. Делаются они созданием картинки на которой изображение построено из 10 или 11 цветов, например картинка из полосок, каждая из которых определенного цвета, доступного в кваке + 1 не из кваковского диапазона – нужен для фона, чтобы после преобразования заместо него были пробелы.
В Photoshop:
  • Изображение – Режим – Индексированные цвета – палитра – равномерная – Количество цветов 10 или 11
  • Изображение – Режим – Таблица цветов… - загрузить… (указываем путь к палитре) – ОК.
После этого, в идеале, должно произойти слияние разных оттенков цвета в наиболее близкие им цвета кваки и изображение будет состоять из 10 или 11 цветов. Но бывает так, что преобразование происходит не так как хотелось, и оттенки цвета могут быть заменены на совсем не близкие им, например желтый на черный. Тогда надо будет откорректировать все в ручную инструментом кисть с размером в 1 пиксель и заливкой.
После всех действий сохраняем изображение в .bmp.

3) Преобразование картинки при помощи ASCII Art Generator в формат HTML.

Устанавливаем ASCII Art Generator. Запускаем программу:
  • Указываем путь к нашей картинке
  • Select Output Format – HTML
  • Convert Options:
    • Font Type: Courier New
    • Font Size: 8
    • Line Height: Normal
    • Text Mode: Custom Text
    • Custom Text: #
    • Alignment: Center
    • Html Header: abc
  • Start Conversation…
  • Правой кнопкой мыши на картинке – View Source – копируем текст
4) Автозамена тегов HTML в привычные кваке коды цветов (^1, ^2 и т.д.) и обязательное добавление wait’а перед выводом каждой строки изображения.

Запускаем прикрепленный к посту html файл. Скопированный текст вставляем в верхнее поле и жмем - ПЕРЕВОД ЦВЕТОВ ИЗ ФОРМАТА HTML => В ФОРМАТ QUAKE3
То, что получилось копируем в cfg файл и запускаем его в нужный момент smile.gif.

P.S.: Нужна помощь в допиливании автозамены. Во-первых, почему-то chrome не понимает символ используемого "пикселя", т.е. символ "ACK" или "%06". В опере все нормально. Во-вторых, хотелось бы чтобы можно было изменять цвет фона и значение wait'а без правки исходного кода страницы, а непосредственно указанием значений в окошках на ней. В-третьих, не знаю как заэкранировать кавычки, приходится использовать промежуточный знак, в данном случае это "*" и уже потом автозаменой менять звездочку на кавычки.
Пост будет правиться и наполняться).

Сообщение отредактировал nL-xajA - 27.07.2015 - 15:44
Прикрепленные файлы
Прикрепленный файл  html_to_q3_color_v0.1.html ( 3.96 килобайт ) Кол-во скачиваний: 1749
Прикрепленный файл  pal_color10_11.zip ( 608 байт ) Кол-во скачиваний: 1708
 


--------------------
Quake3 (1.32c) + defrag 1.91.24 & dfengine 1.08 + distrib ioquake3, iodfengine: cloud.mail.ru | yandex.disk.ru
. . All defrag maps repack!
"мапа то нармальная но жаль с кравым половим" (с) ZERG
????????? ? ?????? ????????
+???????? ? ???????????? ??????? ?????????
___
сообщение 29.07.2015 - 11:26
Сообщение #2





Группа: Пользователи
Сообщений: 390
Регистрация: 8.09.2004
Пользователь №: 274



Цитата
Тогда надо будет откорректировать все в ручную инструментом кисть с размером в 1 пиксель и заливкой.

наверняка там есть инструмент "замена цвета"

Цитата
значение wait'а

не самое удачное решение, чуть что - править кучу конфигов
я написал вместо вейта vstr wwait, а в ней уже указан нужный
и в начале картинки exec конфига с установкой wwait
достаточно поправить один кфг и готово

Цитата
Во-вторых, хотелось бы чтобы можно было изменять цвет фона без правки исходного кода страницы

фон вроде ж прозрачный? (смотря по коду)
это наверное чтоб подбирать цвет непрозрачного на замену прозрачному?

Цитата
В-третьих, не знаю как заэкранировать кавычки, приходится использовать промежуточный знак, в данном случае это "*"

тут кавычки работают, аж тремя способами, и в опере, и в кхроме
\"
' " ' (внешние на апострофы, внутри без экрана)
\x22

В конце строки звёздочка не появляется, кстатии.
Не нужна?

06 в кхроме не работает тоже

Написал макро для emeditor (такой блокнот для красноглазиков)
Делает в принципе то же самое, только без косяков
Запускается в клик или по бинду
q3ascii.jsee
Код
document.selection.Replace( "^<!.*\n", "", eeFindReplaceRegExp );
document.selection.Replace( "</font>", "", eeFindReplaceRegExp | eeReplaceAll );
document.selection.Replace( "</pre.*$", "", eeFindReplaceRegExp | eeReplaceAll );
document.selection.Replace( "\n$", "", eeFindReplaceRegExp | eeReplaceAll );
document.selection.Replace( "(?<!<Font Color=#00ae25)>#", ">\x06", eeFindReplaceRegExp | eeReplaceAll );
while ( document.selection.Replace( "(?<=\x06)#", "\x06", eeFindReplaceRegExp | eeReplaceAll ) );
document.selection.Replace( "<Font Color=#00ae25>#", " ", eeFindReplaceRegExp | eeReplaceAll );
while ( document.selection.Replace( "(?<= )#", " ", eeFindReplaceRegExp | eeReplaceAll ) );
document.selection.Replace( "<Font Color=Black>", "^0", eeReplaceAll );
document.selection.Replace( "<Font Color=Red>", "^1", eeReplaceAll );
document.selection.Replace( "<Font Color=Lime>", "^2", eeReplaceAll );
document.selection.Replace( "<Font Color=Yellow>", "^3", eeReplaceAll );
document.selection.Replace( "<Font Color=Blue>", "^4", eeReplaceAll );
document.selection.Replace( "<Font Color=Aqua>", "^5", eeReplaceAll );
document.selection.Replace( "<Font Color=Fuchsia>", "^6", eeReplaceAll );
document.selection.Replace( "<Font Color=White>", "^7", eeReplaceAll );
document.selection.Replace( "<Font Color=#E08000>", "^8", eeReplaceAll );
document.selection.Replace( "<Font Color=#FF7F00>", "^8", eeReplaceAll );
document.selection.Replace( "<Font Color=Gray>", "^9", eeReplaceAll );
document.selection.Replace( "<Font Color=#7F7F7F>", "^9", eeReplaceAll );
document.selection.Replace( "^", "say \"", eeFindReplaceRegExp | eeReplaceAll );
document.selection.Replace( "$", "\";vstr wwait", eeFindReplaceRegExp | eeReplaceAll );

можно наделать вариантов для разных фонов и запускать
там по дефолту тоже джава, кстатии, может возможно вывести окошко под параметр
или сделать регу в одну строчку, чтоб менять любой цвет на любой, или пустой на цвет
????????? ? ?????? ????????
+???????? ? ???????????? ??????? ?????????

???????? ? ??? ??????????? ????? ????
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 2.12.2022 - 19:06
  Рейтинг@Mail.ru   Rambler's Top100