2

我用 taglib-sharp(2.1.0 版)删除了 ID3 标签的所有图片:

tagFile.Tag.Pictures = new TagLib.IPicture[0];
tagFile.Save();

如果我用 taglib-sharp 再次读取文件,就没有更多图片了。这没关系,但文件大小保持不变。

如果我使用 mp3tag ( http://www.mp3tag.de ) 之类的工具删除图片,文件大小会减小。

有谁知道如何使用 taglib-sharp 减小文件大小?

提前致谢。

雷内

4

2 回答 2

2

因为SepehrM要求我发布我的代码作为答案:

TagLib.Tag tempTag = null;
TagLib.File tagFile = TagLib.File.Create(file);
tempTag = new TagLib.Id3v2.Tag();
tagFile.Tag.CopyTo(tempTag,true);
tagFile.RemoveTags(TagLib.TagTypes.AllTags);
tagFile.Save();
tagFile.Dispose();


TagLib.File tagFile2 = TagLib.File.Create(file);
tempTag.CopyTo(tagFile2.Tag, true);
tagFile2.Save();
tagFile2.Dispose();
于 2015-04-01T21:58:53.693 回答
0

我一直在看这个,我有一个解决方法,如果你保留对所有要保留的标签的引用,删除标签并添加你想要的标签,文件大小会缩小。我意识到这很可怕,但它确实有效。因此,如果您只想保留标题:

        string title;
        using (var taglibFile = TagLib.File.Create(file))
        {
            title = taglibFile.Tag.Title;
            taglibFile.RemoveTags(TagTypes.AllTags);
            taglibFile.Save();
        }

        using (var tagLibFile = TagLib.File.Create(file))
        {
            tagLibFile.Tag.Title = title;
            tagLibFile.Save();
        }
于 2014-03-14T15:22:48.167 回答