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

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

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

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

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

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

> I had a handy image to include but not enough points to post it. Weak.
>右键单击WINDOWS中的.JPG并选择属性
> Win XP:选择“摘要选项卡”并查看“描述”组
> Win7 / Server 2008R2:“详细信息选项卡”并查看“描述”组

谁能解释如何在Visual Studio中通过VB.net编辑这些字段?

编辑:

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

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

最佳答案 我只能为你提供一个起点,因为我不使用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属性进行定位.

点赞