
100 коротких поздравлений с днем рождения в прозе
Обычно PDF-файлы ассоциируются с документами и электронными книгами, но что если бы в них можно было делать игры? В статье расскажем, как один нидерландский умелец смог запустить полноценный «PDF-Тетрис» и в какие еще ретрошедевры можно поиграть в необычном формате.
PDF (Portable Document Format, рус. — «Портативный формат документов») — универсальное расширение электронных документов, которое компания Adobe разработала в 1993 году.
Его до сих пор активно используют, потому что оно удобное, надежное и поддерживает все платформы. Вы можете скачать электронную книгу, туристический буклет или документ по работе в этом формате, и он без проблем откроется на ПК, Android-смартфоне или планшете на iOS.
PDF поддерживает многие мультимедиа: в документы можно добавлять изображения, таблицы, кнопки и даже видео. Однако немногие знают, что в электронный формат встроен язык программирования JavaScript.
Обычно его используют, чтобы создавать интерактивные элементы на сайтах или в мобильных приложениях. Например, когда покупатель выбирает одежду в онлайн-магазине и добавляет новую вещь в корзину, счетчик растет и загорается красным.
К тому же JS — популярный движок для браузерных игр. Happy Wheels, Cookie Clicker, «Змейка», PacMan, Flappy Bird — скорее всего, хотя бы в одну из них вы когда-нибудь играли.
Похожим образом язык работает и в PDF. В теории вы можете создавать разные интерактивные элементы, например кнопки и поля диалогов. Но никому и в голову не могло прийти написать полноценную игру, пока за PDF не взялся нидерландский аналитик по безопасности Томас Ринсма.
Одной из самых обсуждаемых PDF-игр стала Pdftris — адаптация классического «Тетриса» в портативном формате документов.
Ринсма любит в свободное от работы время «копаться в старых и новых технологиях», как сам признается в соцсетях. В один день ему стало скучно, и он решил осуществить давнюю задумку.
Разработчик заметил, что встроенные в браузеры движки для чтения PDF-файлов достаточно функциональны, чтобы на них можно было «запилить» простенькую игру.
Задача была серьезной: поскольку PDF работает преимущественно с текстом и простыми символами, Томасу нужно было найти что-то максимально похожее на обычные игровые пиксели.
Разработчик выбрал поля аннотаций, которые при показе и скрытии превращаются в черные монохромные фигуры — самое то для падающих кусков пазла.
Правила игры в «PDF-тетрис» остались прежними, но управлять можно мышкой: кликать на «<» и «>» для движения в стороны, «v» — чтобы ускорить падение фигуры, «spin» — развернуть деталь.
Управлять с клавиатуры тоже можно. Для этого нужно кликнуть на окошко под полем и использовать , но с каждым нажатием будут появляться новые символы, экран начнет съезжать, из-за чего вы перестанете видеть фигуры — в общем, неудобно.
Поиграть может любой желающий — перейдите по ссылке или скачайте файл с сайта разработчика. Открывайте через Firefox или любые браузеры на движке Chromium: Edge, Chrome, Opera, Vivaldi и другие. Исходный код с комментариями Ринсмы есть на GitHub.
Doom 1993 года — настоящая классика игровой индустрии, которую преданные фанаты любят настолько, что вечно пытаются запустить на самых необычных устройствах.
Уже были удачные эксперименты с холодильниками, банкоматами, калькуляторами и тестами на беременность (!), но сегодня поговорим о том, как разработчик под псевдонимом ading2210 портировал Doom в формат PDF.
Этот проект стал еще более амбициозным, чем «Тетрис», поскольку игра требует высокой частоты кадров и сложного управления.
К счастью, движок Chromium, на котором делали игру, поддерживает обновление текста примерно 80 мс на кадр — этого вполне хватило.
Изначально разработчик пытался отрисовывать каждый пиксель отдельными текстовыми полями, но быстро понял, что это неэффективно, поскольку даже небольшое 320 х 320 разрешение превращало задумку в кошмар.
Ading2210 поступил хитрее: он использовал одно текстовое поле на весь экран и заполнил его ASCII-символами, которые быстро менялись в зависимости от происходящего в игре. Это сильно ускорило работу, в результате он получил более-менее приемлемую 6-цветную картинку.
ASCII — особый стандарт кодировки, который помогает отображать символы на компьютерах и других устройствах.
По сути, это специальная таблица, в которой у каждого знака есть номер в десятичном коде. Например, латинская С — это 100 0011, а Z — 101 1010. Еще ASCII часто используют, чтобы рисовать милые картинки.
Вроде таких:
\(^_^)/
( | )
/ \
Для управления разработчик сделал прокручиваемую консоль из 25 текстовых полей. Чтобы ходить, стрелять, менять оружие, достаточно один раз кликнуть в специальное окошко под игрой и использовать указанные клавиши.
PDF-проекты остаются нишевым, но перспективным направлением, особенно для поклонников компьютерных ретроигр и необычных челленджей.
Сама идея сделать игру в расширении, которое приспособлено преимущественно для текста, кажется безумной, но это весело. А еще доказывает, что даже такие, казалось бы, ограниченные технологии можно использовать творчески.
PDF-игры открываются на любом устройстве, их не нужно устанавливать и они почти ничего не весят. Тот же «Тетрис» и Doom обошлись моему ноутбуку в 120 Кб памяти. PDF-игру можно запустить хоть на гниющей картофелине — было бы желание.
Еще этот формат давно облюбовали «настольщики». Зачем ехать в магазин, если можно сэкономить и купить настольную игру в PDF и распечатать самостоятельно? А уж пару кубиков и фигурок фанаты жанра точно найдут.
«Тетрис» и Doom — это, конечно, здорово, но за 30 лет игродев шагнул далеко вперед. 2025 год — идеальный момент, чтобы собрать игровой ПК. Ведь скоро выйдут GTA VI, Borderlands 4, Elden Ring: Nightreign и DOOM: The Dark Ages (хоть что-то в этом мире не меняется).
На сайте «Ситилинка» вы можете воспользоваться удобным конфигуратором ПК, чтобы собрать компьютер исходя из бюджета и пожеланий. Или подсмотреть чужие сборки и иногда даже повеселиться от пользовательских названий.
Готовую сборку можно заказать в ближайшем салоне, а оплатить покупку Халвой, чтобы получить повышенный кешбэк или оформить беспроцентную рассрочку.
Копить или купить? Выбирайте Халву: в рассрочку и без переплат!
Оценивайте свои финансовые возможности и риски.
Изучите все условия в разделе «Карты»/«Карта Халва» на сайте банка sovcombank.ru
Игры в PDF-формате — отличный показатель того, насколько гибким и интересным может быть текстовый движок, если использовать его не по назначению. Неизвестно, сколько интересных проектов нас ждет в будущем, но пока вы можете насладиться игровой классикой на еще одной необычной платформе.
Вся информация о ценах, партнерах и тарифах актуальна на момент публикации статьи.
Узнавайте о новых статьях
Актуальные и самые интересные статьи будут приходить на вашу электронную почту
Нажимая на кнопку, я выражаю согласие на обработку персональных данных и подтверждаю, что ознакомлен с Политикой обработки персональных данных и принимаю Правила пользования платформой, а также даю согласие на получение рекламной информации от ПАО «Совкомбанк»
Похожие статьи