比例图像尺寸在TImage中没有质量下降而改变

时间:2014-07-06 09:26:40

标签: delphi delphi-xe6

我的TImage 800x600图像为1024x768。 TImage与alClient对齐。 Timage是成比例的。 TImage是拉伸的。

当我调整表单大小时,图像也会调整大小,但它的质量会降低,图像上的可见文本标签会缩小,无法读取,甚至在将大图像加载到小图像后,我也会有相同的问题。

我如何解决这个问题?如何调整TImage中的图像质量,其中文本仍然可以读取任何正常大小?(例如1024x768调整为500x400,文本仍然可读)。

2 个答案:

答案 0 :(得分:3)

您无法希望调整光栅图形的大小并保持高质量的文本。文本呈现为特定分辨率。任何重新取样都会破坏文本的质量。通过调整大小操作维护高质量文本的唯一方法是以新分辨率重新呈现文本。实现这一目标的一种方法是使用矢量图形格式而不是栅格。另一种方法是能够动态地重新创建文本。

答案 1 :(得分:2)

TImage调整大小并不完美。我更喜欢将原始图像保留在内存中,并在需要时使用双三次大小调整(或者对于shrinkink来说是双线性调整大小)。调整图像大小后,只需将其绘制到表单上的TImage。

始终将原始图像保留在内存中,并在绘制后从内存中丢弃已调整大小的图像。