Разработчик из Нидерландов Томас Ринсма воссоздал классическую игру «Тетрис» внутри PDF-файла и назвал разработку Pdftris. Используя движки PDFium и PDF.js, встроенные в современные браузеры, ему удалось создать полноценную игровую среду в статичном файле.
Идея сделать игру в необычном формате пришла ему в голову после того, как он понял, что эти движки поддерживают JavaScript с достаточным набором функций ввода-вывода для создания простого проекта. Игра Pdftris функционирует прямо внутри файла pdftris.pdf. Геймплей осуществляется на одной странице документа, где игровое поле состоит из стандартных PDF-объектов, которые обычно используются для отображения аннотаций и форм. Они появляются и исчезают, имитируя движение фигур. Управление реализовано двумя способами: с помощью кнопок на странице и через текстовое поле, куда игрок может вводить команды с клавиатуры. Клавиша W отвечает за вращение падающих фигур, A и D перемещают их влево и вправо, а S ускоряет падение. Набранные очки отображаются в отдельном поле.
Хотя PDF-файлы обычно статичны, встроенный JavaScript-код позволяет динамически управлять объектами в документе. Это делает возможным создание игровой логики, включая обновление интерфейса, обработку нажатий клавиш, движение фигур, удаление заполненных линий и подсчет очков. После завершения игры результаты можно распечатать на принтере.
Для запуска Pdftris нужно открыть файл в любом современном браузере, поддерживающем PDFium (например, Chrome) или PDF.js (Firefox). По словам разработчика, игра не работает в Acrobat Reader, но возможно запустится в Foxit Reader. Исходный код можно посмотреть просто открыв файл в любом текстовом редактор. Также код игры доступен на странице проекта в GitHub, где также можно найти скрипт на Python для генерации игрового PDF.
Уже не один год среди программистов и энтузиастов компьютерных игр существует негласное соревнование по запуску видеоигр на нестандартных для этого аппаратных и программных платформах. Например, классический шутер Doom 1993 года запускали не только на многих экзотических устройствах, таких, например, как клавиша клавиатуры, или Porshe 911, но и воссоздавали в других программах, например, в приложении Блокнот.