返回上一页  首页 | cnbeta报时: 03:17:50
《俄罗斯方块》被压缩成60KB的PDF小文件 可在任何浏览器上运行
发布日期:2025-01-13 21:23:29  稿源:cnBeta.COM

一位聪明的安全分析师已经证明,PDF 不仅仅适用于无聊的文档和表格。 他成功地将经典的俄罗斯方块游戏压缩到了一个 60KB 的 PDF 文件中,该文件可以在浏览器中直接运行。

这个被制作者托马斯-林斯马命名为"Pdftris"的作品,只需点击一下,就能让你玩容易上瘾的方块下落游戏:

https://th0mas.nl/downloads/pdftris.pdf

我们在 Firefox 上启动了这款游戏,果然,那些四边形积木从临时游戏区滚落下来,仿佛又回到了 1984 年。

在控制方面,你可以用鼠标点击屏幕上的按钮,这一点也不直观,因此Rinsma 还加入了键盘控制--玩家可以用 WASD 键移动、旋转和丢弃四角形小球。

游戏没有声音,没有颜色,只能在一个不大的浏览器窗口中运行,也许未来的更新会引入这些缺失的部分。

至于 Rinsma 是如何将所有这些功能塞进一个专为文档设计的文件格式中的,这要归功于很少有人涉足的 PDF 脚本领域,而这一领域的超级功臣非 JavaScript 莫属。

为 Chrome 和 Firefox 等浏览器提供支持的 PDF 引擎实际上只支持有限的 JavaScript 命令集。 Rinsma 意识到,他可以利用这一点从头开始拼凑出一个类似俄罗斯方块的基本游戏。

Rinsma 不得不想出一些笨办法,才能让他的游戏在不同的 PDF 引擎中正常呈现。 他的解决方案是使用 PDF 注释"字段"的显示/隐藏功能来创建标志性的单色俄罗斯方块像素。

控制操作是另一个挑战。 虽然您可以使用屏幕上的按钮,但 Rinsma 还巧妙地启用了键盘控制功能,允许您在游戏下方的文本输入框中键入文字。 输入会发送击键事件,游戏可以将这些事件解释为动作。

图片.png

用 Rinsma 自己的来说,这样做的结果确实很"笨拙"。 但这正是这种实验性作品的魅力所在。

在引擎盖下,Pdftris 只是隐藏在 PDF 文件中的普通 ASCII 文本。 您可以下载它并在文本编辑器中打开代码,看看它是如何工作的。 或者,您也可以查看 Rinsma 的 GitHub 软件仓库,获取更多带有注释的可读源代码。

现在,你可能会想--既然俄罗斯方块都能在 PDF 文件中运行,肯定不会有人敢把 Doom 这种疯狂的东西也挤进 PDF 文件中吧? 好吧,Rinsma 就知道你会有这种想法。 他认为如果使用单一的 PDF 引擎,"使用正确的技巧"确实是可行的。

我们在FebBox(https://www.febbox.com/cnbeta) 开通了新的频道,更好阅读体验,更及时更新提醒,欢迎前来阅览和打赏。
查看网友评论   返回完整版观看

返回上一页  首页 | cnbeta报时: 03:17:50

文字版  标准版  电脑端

© 2003-2025