Delphi TImageviewer最大大小

Delphi TImageviewer最大大小,delphi,firemonkey,delphi-xe3,firemonkey-fm2,Delphi,Firemonkey,Delphi Xe3,Firemonkey Fm2,有人知道FireMonkey TImageViewer中位图的最大宽度和高度是多少吗? 我正在TImageViewer中绘制矢量图形。我只能放大到一个特定的值,然后得到一个内存异常。我在两台不同的计算机上测试了这个问题,Firemonkey中位图的实际大小限制似乎是8000x8000 px,这意味着宽度和高度分别限制在8000 px大小 这是我观察到的,如果有人得到不同的结果,请告诉我 如何解决这一问题取决于您,我建议您将源图像分解为多个部分,这样两个部分都不会超过限制,然后将每个部分分配给不同

有人知道FireMonkey TImageViewer中位图的最大宽度和高度是多少吗?
我正在TImageViewer中绘制矢量图形。我只能放大到一个特定的值,然后得到一个内存异常。

我在两台不同的计算机上测试了这个问题,Firemonkey中位图的实际大小限制似乎是8000x8000 px,这意味着宽度和高度分别限制在8000 px大小

这是我观察到的,如果有人得到不同的结果,请告诉我


如何解决这一问题取决于您,我建议您将源图像分解为多个部分,这样两个部分都不会超过限制,然后将每个部分分配给不同的位图组件(如TImageViewer),然后将其作为一个整体进行处理。

导致异常的“特定值”是什么?什么是异常(您得到的确切异常消息)?要回答这样一个问题是相当困难的:“当我放大TImageViewer时超过了我没有给出的值时,如何修复未指定的异常?”你能回答你的问题并提供更多细节吗?谢谢。位图图像的大小没有限制,请创建一个简单的例子,说明如何重现您的问题。@PeterVonča我也注意到了这个限制。如果您试图将大图像(例如:8000 X 5000 px)加载到TImage或TBitmap中,则会出现内存异常。我不太确定“特定值”是什么。这就是我想弄明白的。正如Peter Vonča所说,当图像太大时,会出现内存异常。如果我能计算出图像的最大大小,我可以进行检查,这样图像就不会超过最大值。@slotomo,当这个问题发布时,我在我的机器上测试了它,无论大小,它都可以正常工作。刚刚再次测试过,在TImage或TBitmap中加载的8000x5000像素jpeg和bmp图像对我来说很好。这就是为什么我说他应该发布一个关于如何复制的简单示例,因为我根本无法触发该异常。已在XE3和XE4上测试。谢谢。在将其标记为答案之前,我将进行测试以确认。只有一个问题:这是否意味着宽度和高度分别限制为8000 x 8000,或者像素的总限制为8000 x 8000,因此我可以将位图设置为9000 x 7000 px?另外,是否可以将我的帐户从用户1980303更改为:(@user1980303,宽度和高度分别限制为8000 px,一旦超过限制,就会抛出异常。如果使用Direct 10/Direct2D,实际上限制为8192像素x 8192像素(Delphi使用Direct 10,在Direct 11中最多可以创建16384像素x 16384像素的位图)。如果将GlobalUseDX10:=False;和GlobalUseDirect2D:=False;添加到项目中,则可以创建更大的位图(我相信最多32767像素x 32767像素)。