- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想实现一个具有旧 vga+crt 监视器图形配置外观和感觉的文本控制台。为此,我需要有关典型设置的渲染纵横比的信息。
最佳答案
没有人说像素是正方形的。
事实上,在 VGA 出现并提供 640x480 之前,IBM 风格的 PC(我不知道 Macintosh 或 Amiga 是否这样做)没有常见的视频适配器/显示器组合呈现方形像素。
请记住,VGA 是为 CRT 设计的模拟技术。特别是分辨率和刷新率是由主板上的视频适配器控制的,而不是显示器。监视器电子设备可以从左到右和从上到下(在电子设备可以承受的频率范围内)运行电子束,以产生视频 Controller 卡想要输出的任何像素分辨率。像素是可寻址元素,而不是显示元素,它们的“矩形”程度取决于显示器(大多数显示器都有调整显示器 V 尺寸的控件,因此比例不固定)。
尽管有“标准”分辨率(这基本上意味着它们已明确列出并受到 IBM PC BIOS 的支持),但如果您知道您使用的是哪种硬件,您可能会重新编程视频适配器以呈现不寻常的分辨率。几个视频游戏就是这样做的。
我还记得一个实用程序,它对原始 IBM PC(“MDA”)的单色显示适配器进行了重新编程,以在文本模式下呈现 26 行,而不是 25 行。如果你愿意,该实用程序使用额外的行来输出“状态栏”, Caps Lock、Scroll Lock 和 Num Lock 状态(当时的键盘没有状态灯)。有趣的是,MDA 适配器没有足够的 RAM 来容纳一整行额外的文本,所以视频输出电路在缓冲区的末尾翻转,第 26 行的最后三分之一左右重复了第一行屏幕左上角的几个字符。你和那个一起生活。 (该实用程序也适用于 Hercules 视频适配器,它使用相同的 Controller 芯片,但有更多的 RAM 来支持图形模式,因此不会出现重复字符溢出)。
您还没有听说过 720x400,因为没人关心。程序无法在此模式下处理单个像素,因为它们是由字符生成器电路动态生成的,所以这真的无关紧要。 VGA 适配器电路显然可以以这个频率驱动显示器,所以理论上你可以有一个高分辨率的图形模式,但是适配器没有足够的 RAM 来支持它(电子设备中的其他限制也可能是存在;例如,是否可以足够快地扫描视频 RAM?我不知道。)
编辑,有一些说明:
需要 V 尺寸调节旋钮,因为 CRT 电子设备无法以经济的方式精确精确。需要一些摆动空间和手动调整控制垂直扫描范围的电压,以考虑壁电流的电压变化、电子设备老化(特别是电容器)等。目的是使用旋钮调整结果高度,直到输出是“正确的”(大约 4x3)。当电子设备变得足够复杂以自动进行这些调整时,这些旋钮最终消失了。
要回答您的最后一个问题:您必须承认像素不是正方形的事实。忠实的外观需要您以您选择的分辨率将渲染图像 720x400 矩阵缩放(压缩或拉伸(stretch))为 4x3 比例。它不会很锋利,我可以计算像素;它不可能是。这与笔记本电脑制造商在 LCD 面板上呈现文本模式的问题相同。
关于aspect-ratio - 实现 VGA 80x25 文本控制台纵横比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15520480/
我有一张 table 。我希望它的数据垂直和水平居中。 我使用了 align="center"valign="middle" ,但它没有用。
我是一名优秀的程序员,十分优秀!