可以将数据写入JPG文件的EXIF组件(Delphi7)

时间:2013-09-24 23:36:36

标签: delphi components edit exif

我正在寻找一个可以将EXIF数据写入JPG图像的Delphi7组件。

我经常制作全景图,加入我用相机拍摄的一些照片。 PTGui是我用来制作这种全景图的程序。问题是原始图片中的EXIF数据不会保留在最终图像中。

我想用Delphi7编写一个代码,它从集合的第一个图像中读取EXIF数据,并将该数据写入最终的全景图像。

我可以找到CCR EXIF,但它来自Delphi 2006,而不是D7 ......

任何人都可以提出一些想法,提示,线索?


被修改: 我很遗憾地提出一个偏离主题的问题。当然这不是我的意图。

回答并感谢Warren P,是的,我尝试使用Delphi7进行CCR。

尝试其任何示例代码,都会返回此错误: Constant expression expected.

在这一行:     {$IF CompilerVersion < 23} //no FMX before XE2

<{1>}文件中的

有三种样本:

  • 2009年,在文件名末尾
  • 在文件名末尾使用XE
  • 只是文件名

这个小代码返回一个丢失的DCU文件:

CCR.Exif.inc

uses CCR.Exif; procedure ReadCameraMakeAndModel(const FileName: string; out Make, Model: string); var ExifData: TExifData; begin ExifData := TExifData.Create; try ExifData.LoadFromGraphic(FileName); Make := ExifData.CameraMake; Model := ExifData.CameraModel; finally ExifData.Free; end; end;

DCU文件夹中没有DCU文件。

由于上述错误,我得出的结论是CCR Exif不适用于Delphi 7,但我可能错了。


已编辑2 更新一些信息:

我安装了Delphi 2007,应该可以编译CCR Exif。 但是当我尝试编译CCR Exif附带的一些Samples项目时,我面临着一种奇怪的行为。我可以编译以下示例: File not found: CCR.Exif.dcu IPTCEditor

但我无法编译以下内容: XMPBrowser ExifList JpegDump ResaveTest Screenshot

所有这些错误都是一样的:

在这个街区:

TimeShift

错误:

if Value <> LastSetDateTimeValue then
  begin
    LastSetDateTimeValue := Value;
    LastSetDateTimeMainStr := DateTimeToExifString(Value);
    LastSetDateTimeSubSecStr := GetExifSubSecsString(Value);
  end;

奇怪的是我有一个朋友 Delphi XE 但是他可以编译样本没有错误 ...: - (

搜索CCR.Exif.BaseUtils.pas我发现 DateTimeTagValue 记录。但为什么我的朋友可以编译相同的包???而我不能?

这是我桌面布局的截图:

enter image description here 有人有线索吗?

0 个答案:

没有答案