如何编辑JPG文件标题,主题,评论和标签/关键字?

时间:2011-02-03 02:32:56

标签: vb.net tags metadata keyword jpeg

如何编辑JPG文件标题,主题,评论和标签/ Keyowrds?*

我已经尝试过问这个问题here

提供的Exif信息很有帮助,但最终并没有真​​正解决我正在研究的真正的谜题。因此,我将在描述所需结果时采取另一个角度:

我希望我的VB.NET应用程序允许我编辑Jfile的以下详细信息(见图):

标题,主题,评论和标签/ Keyowrds

任何人都可以解释如何在Visual Studio中通过VB.net编辑这些字段吗?

编辑:

最终目标是使用我构建的图像查看器/编辑器,对我多年来收集的数千张随机网页图像进行排序。 在查看图像(说“00001.jpg”)并弄清楚它是什么(“天花板猫送儿子”lol cat的图片)时,我想输入描述(已在表格中完成)。当我按Enter键时,我想重命名文件(从“00001.jpg”到“ceiling-cat-sending-son.jpg”,然后用相同的数据填写关键字,标题,主题和注释字段:“ceiling猫送儿子“。

这将有助于本地索引和我(稍后)自动化SQL服务器参考数据库,以便在我的网站上进行全站点搜索。我似乎无法弄清楚的唯一的事情是如何修改这四个字段,好像我右键单击了该文件并添加了关键字。

1 个答案:

答案 0 :(得分:2)

我只能为您提供一个起点,因为我不使用VB.Net而且我只读取EXIF数据。在C#中,如果使用以下命令在System.Drawing.Image实例中打开文件:

Image image = System.Drawing.Image.FromFile("path/to/file.jpg");

您可以使用image.GetPropertyItem(0x0112)访问原始EXIF数据,其中列出了所有可用属性项:

http://msdn.microsoft.com/en-us/library/ms534418%28VS.85%29.aspx

同样地,有一个image.SetPropertyItem(0x0112)方法,但我认为只会将其设置在内存中,您必须保存图像的副本才能将其写出来。我想你想要的是能够在不触及实际图像的情况下修改EXIF,我不知道该怎么做。

使用元数据

正如我在评论中所说,我建议您不要编辑图像标题信息,而应创建一个包含此类信息的Media类:

public class Media
{
    public string Title { get; set; }
    public string Subject { get; set; }
    public string Comments { get; set; }
    public string[] Tags { get; set; }
    public string PathToFile { get; set; }
}

然后,您将此记录存储在数据库中,这使得搜索非常容易。如果您需要实际文件,请使用PathToFile属性找到它。