GroupDocs.Metadata 24.8.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package GroupDocs.Metadata --version 24.8.0                
NuGet\Install-Package GroupDocs.Metadata -Version 24.8.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="GroupDocs.Metadata" Version="24.8.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add GroupDocs.Metadata --version 24.8.0                
#r "nuget: GroupDocs.Metadata, 24.8.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install GroupDocs.Metadata as a Cake Addin
#addin nuget:?package=GroupDocs.Metadata&version=24.8.0

// Install GroupDocs.Metadata as a Cake Tool
#tool nuget:?package=GroupDocs.Metadata&version=24.8.0                

.NET API for Metadata Processing

Version 24.8.0 NuGet

banner

Product Page | Docs | Demos | API Reference | Examples | Blog | Releases | Free Support | Temporary License

Important Note: Starting from 24.4.0, the GroupDocs.Metadata package has been split into two distinct platform packages: .NET Standard and .NET Framework. The GroupDocs.Metadata package is specifically designed to support the .NET Standard platform, making it compatible with .NET Core, .NET 5, .NET 6, etc. It includes backward compatibility improvements, allowing it to function with .NET Framework versions starting from 4.7.2. In addition, we have introduced the GroupDocs.Metadata.NETFramework package, which is optimized to run seamlessly in the .NET Framework runtime because it includes all the GroupDocs product libraries in their respective .NET Framework versions. It is tailored specifically for .NET Framework users and offers better dependency resolution for those utilizing the .NET Framework. We hope these changes will enhance your experience and provide a more streamlined approach to using the GroupDocs.Metadata package. If you have any further questions or concerns, please don't hesitate to reach out to our free support forum.

This .NET API can be consumed to integrate metadata viewer, editor, reader, writer, and remover operations within your .NET apps.

What's New in v.24.8.0

New Features and Enhancements:

  • Support for Comic Book Archive Formats: This release introduces support for reading and extracting metadata from various comic book archive formats, including .cbr, .cb7, .cbz, and .cbt. These formats are commonly used for digital comic books, and with this update, developers can easily access metadata information from these files (METADATANET-4079).

Public API and Backward Incompatible Changes:

  • Caching for Heavy Operations: The latest version also implements the ability to configure cache for heavy operations, optimizing performance when working with large files or complex metadata extraction tasks. This feature ensures faster processing and reduced resource consumption, enhancing the overall efficiency of your applications.

  • Read Metadata from Comic Book Archives:

    • CBR Example:
      using (Metadata metadata = new Metadata("D:\\sample.cbr"))
      {
          var root = metadata.GetRootPackage<RarRootPackage>();
          Console.WriteLine(root.RarPackage.TotalEntries);
      
          foreach (var file in root.RarPackage.Files)
          {
              Console.WriteLine(file.Name);
              Console.WriteLine(file.CompressedSize);
              Console.WriteLine(file.ModificationDateTime);
              Console.WriteLine(file.UncompressedSize);
          }
      }
      
    • CBT Example:
      using (Metadata metadata = new Metadata("D:\\sample.cbt"))
      {
          var root = metadata.GetRootPackage<TarRootPackage>();
          Console.WriteLine(root.TarPackage.TotalEntries);
      
          foreach (var file in root.TarPackage.Files)
          {
              Console.WriteLine(file.Name);
              Console.WriteLine(file.Size);
          }
      }
      
    • CB7 Example:
      using (Metadata metadata = new Metadata("D:\\sample.cb7"))
      {
          var root = metadata.GetRootPackage<SevenZipRootPackage>();
          Console.WriteLine(root.SevenZipPackage.TotalEntries);
      
          foreach (var file in root.SevenZipPackage.Files)
          {
              Console.WriteLine(file.Name);
              Console.WriteLine(file.CompressedSize);
              Console.WriteLine(file.ModificationDateTime);
              Console.WriteLine(file.UncompressedSize);
          }
      }
      

Source*

For a complete list of features, enhancements, and bug fixes in this release please visit, GroupDocs.Metadata for .NET 24.8 Release Notes.

Document Metadata Processing Features

  • Read, update, and remove metadata in a variety of formats.
  • Search, update, and remove particular metadata properties as per specified predicate.
  • Use tags to easily manipulate the most common metadata properties in a unified manner.
  • Work with password-protected documents.
  • Extract information about hidden document pages, digital signatures, user comments, revisions, etc.
  • Supports many popular metadata standards, such as IPTC, XMP, EXIF, Image Resources.
  • Manipulate native metadata properties in various formats.
  • Extract technical information from images, audio, and video files.
  • Calculate common document statistics (word count, character count, etc.).
  • Detect the format and MIME type of a file by its internal structure.
  • Work with various audio tags (ID3, Lyrics, APE).
  • Load file from a local disk or a stream.
  • Load a file of a specific format or load a password-protected file.
  • Traverse a whole metadata tree.
  • Work with the APEv2, ID3v1, ID3v2, Lyrics & other tags of MP3 metadata.

Read & Write Metadata Formats

Microsoft Word: DOC, DOT, DOCX, DOCM, DOTX
Microsoft Excel: XLSX, XLSM, XLTM, XLS
Microsoft PowerPoint: PPTX, PPTM, PPSX, PPSM, POTX, POTM, PPT, PPS
Microsoft Visio: VSD, VDX, VSDX, VSS, VSX
Microsoft OneNote: ONE
Microsoft Project: MPP
OpenOffice: ODS, ODT, OTF, OTC
Audio: MP3, WAV
Video: AVI, MOV / QT, ASF, FLV
Email: EML, MSG, VCF, VCR
Image: BMP, GIF, JPG, JPEG, JPE, JP2, PNG, TIFF, DICOM, WEBP, HEIF / HEIC
Archive: ZIP
Font: TTF, TTC
Metafile: EMF, WMF
Adobe Photoshop: PSD
AutoCAD: DWG, DXF
Portable: PDF
eBook: EPUB, DJVU, DJV
Other: TORRENT

Platform Independence

GroupDocs.Metadata for .NET does not require any external software or third-party tool to be installed. GroupDocs.Metadata for .NET support any 32-bit or 64-bit operating system where .NET or Mono framework is installed. The other details are as follows:

Microsoft Windows: Microsoft Windows Desktop (x86, x64) (XP & up), Microsoft Windows Server (x86, x64) (2000 & up), Windows Azure
Mac OS: Mac OS X
Linux: Linux (Ubuntu, OpenSUSE, CentOS and others)
Development Environments: Microsoft Visual Studio (2010 & up), Xamarin.Android, Xamarin.IOS, Xamarin.Mac, MonoDevelop 2.4 and later.
Supported Frameworks: GroupDocs.Conversion for .NET supports .NET and Mono frameworks.

Get Started

Are you ready to give GroupDocs.Metadata for .NET a try? Simply execute Install-Package GroupDocs.Metadata from Package Manager Console in Visual Studio to fetch & reference GroupDocs.Metadata assembly in your project. If you already have GroupDocs.Metadata for .Net and want to upgrade it, please execute Update-Package GroupDocs.Metadata to get the latest version.

Please check the GitHub Repository for other common usage scenarios.

Use C# to Remove All Metadata Properties from a File

using (Metadata metadata = new Metadata(Constants.InputPdf))
{
    // Remove detected metadata packages
    var affected = metadata.Sanitize();
    Console.WriteLine("Properties removed: {0}", affected);

    metadata.Save(Constants.OutputPdf);
}

Extract Metadata from Files via C# Code

foreach(string file in Directory.GetFiles(Constants.InputPath)) {
    using(Metadata metadata = new Metadata(file)) {
        if (metadata.FileFormat != FileFormat.Unknown && !metadata.GetDocumentInfo().IsEncrypted) {
            Console.WriteLine();
            Console.WriteLine(file);

            // fetch all metadata properties that fall into a particular category
            var properties = metadata.FindProperties(p => p.Tags.Any(t => t.Category == Tags.Content));
            Console.WriteLine("The metadata properties describing some characteristics of the file content: title, keywords, language, etc.");
            foreach(var property in properties) {
                Console.WriteLine("{0} = {1}", property.Name, property.Value);
            }

            // fetch all properties having a specific type and value
            var year = DateTime.Today.Year;
            properties = metadata.FindProperties(p => p.Value.Type == MetadataPropertyType.DateTime &&
                p.Value.ToStruct(DateTime.MinValue).Year == year);

            Console.WriteLine("All datetime properties with the year value equal to the current year");
            foreach(var property in properties) {
                Console.WriteLine("{0} = {1}", property.Name, property.Value);
            }
        }
    }
}

Product Page | Docs | Demos | API Reference | Examples | Blog | Releases | Free Support | Temporary License

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
24.9.0 6,846 9/20/2024
24.8.0 1,901 8/12/2024
24.7.0 901 7/24/2024
24.6.0 1,628 6/20/2024
24.5.1 634 5/21/2024
24.5.0 641 5/3/2024
24.4.0 4,386 4/9/2024
24.3.0 4,646 3/11/2024
24.2.0 2,015 2/5/2024
24.1.0 542 1/22/2024
23.12.1 134,800 12/19/2023
23.12.0 1,294 12/13/2023
23.11.0 4,704 11/14/2023
23.10.0 2,326 10/27/2023
23.9.0 32,843 9/29/2023
23.8.0 21,944 8/17/2023
23.7.0 3,962 7/31/2023
23.5.0 46,692 5/24/2023
23.4.0 7,017 4/26/2023
23.3.0 22,434 3/22/2023
23.1.0 9,248 1/17/2023
22.11.1 3,949 12/5/2022
22.11.0 6,063 11/8/2022
22.9.0 3,785 9/16/2022
21.8.0 86,940 8/9/2021
21.6.0 14,821 6/11/2021
21.5.0 7,915 5/13/2021
21.4.0 7,101 4/1/2021
21.2.0 54,522 2/4/2021
21.1.0 20,985 1/20/2021
20.11.0 40,063 11/2/2020
20.10.0 22,430 9/30/2020
20.9.0 21,847 9/4/2020
20.8.0 21,500 8/11/2020
20.7.0 50,405 7/3/2020
20.6.0 35,651 6/3/2020
20.5.0 35,470 5/6/2020
20.4.0 20,725 4/2/2020
20.3.0 21,307 3/13/2020
20.1.0 37,592 1/23/2020
19.11.0 57,133 11/29/2019
19.5.1 3,293 6/14/2019
19.5.0 1,011 5/29/2019
19.4.0 1,141 4/4/2019
19.3.0 1,053 3/7/2019
19.2.0 1,010 2/7/2019
19.1.0 1,084 1/10/2019
18.12.0 1,132 12/5/2018
18.11.0 1,148 11/1/2018
18.10.0 1,306 10/5/2018
18.9.0 1,283 9/4/2018
18.8.0 1,336 8/3/2018
18.7.0 1,141 7/2/2018
18.6.0 1,280 6/4/2018
18.5.0 1,418 5/10/2018
18.4.0 1,527 4/12/2018
18.2.0 1,498 2/7/2018
18.1.0 1,471 1/12/2018
17.12.0 1,459 12/12/2017
17.11.0 1,519 11/6/2017
17.10.2 1,510 10/24/2017
17.10.1 1,338 10/10/2017
17.10.0 1,610 10/3/2017