【问题标题】:How to display all picture formats in TImage using Delphi如何使用Delphi在TImage中显示所有图片格式
【发布时间】:2012-04-28 17:14:10
【问题描述】:

我编写了一个存储照片的应用程序,将照片的路径保存在数据库中。我遇到了一个问题。当我单击按钮选择要在 TImage 对象中显示以供用户在保存前查看的图片时,我收到以下异常通知:引发异常类:EInvalidGraphic 并带有消息“未知图片扩展名(.jpg)”

我正在使用 TopenPicture 组件来获取图像。 openPicture.filter 属性设置为接受大多数图像格式(jpg、jpeg、png、gif、bmp),但我无法将这些格式中的任何一种加载到 TImage 组件中。

这是我用来加载图像的代码:

openPicture.Execute();
filename := openPicture.FileName;

if not(fileName = '') then
begin
  imgFoto.Picture.LoadFromFile(filename);
  imgFoto.Visible := true;
end;

【问题讨论】:

标签: delphi delphi-xe2 timage


【解决方案1】:

在接口部分的uses子句中添加JPEG

这会自动将.jpg 注册为有效的图像文件扩展名,并将其耦合到TPicture 将实例化的TJPEGImage 类。

【讨论】:

  • 同样添加 pngimage 和 gifimage 或其他名称
  • 对于.png 我有这个问题:[致命错误] UWizard.pas(15): File not found: 'PngImage.dcu'
  • @Slap 就像大卫说的:“或者不管他们叫什么”;你的 Delphi 版本使用了另一个文件名!
  • 不,我必须下载 .png 源文件(.pas 文件)并将它们添加到我的项目中并构建它(Delphi 7)
  • @Slap Delphi 7 没有内置的 PNG 支持;您必须自己添加。这就是大卫提到源名称可能不同的原因。搜索或购买 PNG 组件套件。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-22
  • 2023-03-24
  • 2017-06-02
  • 1970-01-01
  • 2016-10-09
相关资源
最近更新 更多