如何使用 taglib 将图片添加到 ID3 相册标签#

Posted

技术标签:

【中文标题】如何使用 taglib 将图片添加到 ID3 相册标签#【英文标题】:How do you add a picture to the ID3 Album tag using taglib# 【发布时间】:2019-08-05 05:25:16 【问题描述】:

我一直在搜索互联网并尝试各种方法将 picturbox 图像保存到 id3 相册图片标签。一个示例代码显示专辑封面标签名称为 taglib.ipicture,另一个示例代码为 taglibVariable.Image,另一个示例代码为 taglibVariable.picture(0)。 我变得如此困惑,我开始重复示例测试代码。 可以解释我必须做什么的文档在哪里? 我能找到的很少信息是指向示例代码的死链接或使用没有解释的变量的不完整代码。当我查找命令并尝试格式化或转换为所需的数据类型时,出现错误。通常 system.image.bmp 无法转换为 iPicture。

任何人都可以给我一些工作代码或指针,说明如何使用正确的搜索词来将图片框.图像添加到相册图片标签。将图像保存为文件,然后作为图像打开以放入标签,然后删除文件不是一种选择。我需要创建一个内存图像并将其添加到图片标签中。

【问题讨论】:

【参考方案1】:

这是我用的:

public void SavePicture(string fileName, string picName) 
      try 
        IPicture[] pics = new TagLib.IPicture[1];
        pics[0] = new TagLib.Picture(picName);
        using (var songTag = TagLib.File.Create(fileName)) 
          songTag.Tag.Pictures = pics;
          songTag.Save();
        
      
      catch 
        // process
        // mpeg header is corrupt
      
    

fileName 是音频文件的完整路径;

picName 是图片的完整路径。

您可以通过相应地设置 IPicture 数组的数组大小来添加多张图片...

【讨论】:

以上是关于如何使用 taglib 将图片添加到 ID3 相册标签#的主要内容,如果未能解决你的问题,请参考以下文章

调整 ID3 标签图片大小

MonoTouch上如何将指定图片添加到用户的相册相册

使用 taglib# 提取 mp3 标签

在 Powershell 中使用 TagLib 读取 id3v2 帧

Taglib 锐利保存仅 ID3v2

TagLib 不保存 ID3 标签