LEADTOOLS (Leadtools assembly) Send comments on this topic. | Back to Introduction - All Topics | Help Version 17.0.3.29
Comments Property
See Also 
Leadtools Namespace > RasterImage Class : Comments Property



The collection of comment data used when reading and writing certain file formats (including GIF). Supported in Silverlight, Windows Phone 7

Syntax

Visual Basic (Declaration) 
Public ReadOnly Property Comments As RasterCollection(Of RasterCommentMetadata)
Visual Basic (Usage)Copy Code
Dim instance As RasterImage
Dim value As RasterCollection(Of RasterCommentMetadata)
 
value = instance.Comments
C# 
public RasterCollection<RasterCommentMetadata> Comments {get;}

Property Value

A collection of RasterCommentMetadata used when reading and writing certain file formats (including GIF).

Example

Visual BasicCopy Code
Private Sub DisplayComment(ByVal comment As RasterCommentMetadata)
      Select Case comment.DataType
         Case RasterCommentMetadataDataType.Ascii
            MessageBox.Show("Comment of type " & comment.Type.ToString() & " = " & comment.ToAscii())
      End Select
   End Sub
   Public Sub CommentsExample()
      Dim codecs As RasterCodecs = New RasterCodecs()
      Dim image As RasterImage = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE1.CMP"))

      'Ascii
      Dim commentDataAscii As RasterCommentMetadata = New RasterCommentMetadata()
      ' set the artist comment
      commentDataAscii.Type = RasterCommentMetadataType.Artist
      commentDataAscii.FromAscii("Test String")
      image.Comments.Add(commentDataAscii)

      codecs.Options.Save.Comments = True
      codecs.Save(image, Path.Combine(LEAD_VARS.ImagesDir, "IMAGE1_COMMENTS.TIF"), RasterImageFormat.Tif, 0)
      ' load the comment together with the image

      Dim comment As RasterCommentMetadata = codecs.ReadComment(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE1_COMMENTS.TIF"), 1, RasterCommentMetadataType.Artist)
      DisplayComment(comment)

      codecs.Dispose()
   End Sub

Public NotInheritable Class LEAD_VARS
   Public Const ImagesDir As String = "C:\Users\Public\Documents\LEADTOOLS Images"
End Class
C#Copy Code
private void DisplayComment(RasterCommentMetadata comment)
   {
      switch(comment.DataType)
      {
         case RasterCommentMetadataDataType.Ascii:
            MessageBox.Show("Comment of type " + comment.Type.ToString() + " = " + comment.ToAscii());
            break;
      }
   }
   public void CommentsExample()
   {
      RasterCodecs codecs = new RasterCodecs();
      RasterImage image = codecs.Load(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE1.CMP"));

      //Ascii
      RasterCommentMetadata commentDataAscii = new RasterCommentMetadata();
      // set the artist comment
      commentDataAscii.Type = RasterCommentMetadataType.Artist;
      commentDataAscii.FromAscii("Test String");
      image.Comments.Add(commentDataAscii);

      codecs.Options.Save.Comments = true;
      codecs.Save(image,Path.Combine(LEAD_VARS.ImagesDir, "IMAGE1_COMMENTS.TIF"), RasterImageFormat.Tif, 0);
      // load the comment together with the image

      RasterCommentMetadata comment = codecs.ReadComment(Path.Combine(LEAD_VARS.ImagesDir, "IMAGE1_COMMENTS.TIF"), 1, RasterCommentMetadataType.Artist);
      DisplayComment(comment);

      codecs.Dispose();
   }

static class LEAD_VARS
{
   public const string ImagesDir = @"C:\Users\Public\Documents\LEADTOOLS Images";
}
SilverlightCSharpCopy Code
private void DisplayComment(RasterCommentMetadata comment)
{
   switch (comment.DataType)
   {
      case RasterCommentMetadataDataType.Ascii:
         Debug.WriteLine("Comment of type " + comment.Type.ToString() + " = " + comment.ToAscii());
         break;
   }
}
public void CommentsExample(RasterImage image, Stream destStream)
{
   //Ascii
   RasterCommentMetadata commentDataAscii = new RasterCommentMetadata();
   // set the artist comment
   commentDataAscii.Type = RasterCommentMetadataType.Artist;
   commentDataAscii.FromAscii("Test String");
   image.Comments.Add(commentDataAscii);
   RasterCodecs codecs = new RasterCodecs();
   codecs.Options.Save.Comments = true;
   codecs.Save(image, destStream, RasterImageFormat.Tif, 0);
   // load the comment together with the image

   RasterCommentMetadata comment = codecs.ReadComment(destStream, 1, RasterCommentMetadataType.Artist);
   DisplayComment(comment);
}
SilverlightVBCopy Code
Private Sub DisplayComment(ByVal comment As RasterCommentMetadata)
   Select Case comment.DataType
      Case RasterCommentMetadataDataType.Ascii
         Debug.WriteLine("Comment of type " & comment.Type.ToString() & " = " & comment.ToAscii())
   End Select
End Sub
Public Sub CommentsExample(ByVal image As RasterImage, ByVal destStream As Stream)
   'Ascii
   Dim commentDataAscii As RasterCommentMetadata = New RasterCommentMetadata()
   ' set the artist comment
   commentDataAscii.Type = RasterCommentMetadataType.Artist
   commentDataAscii.FromAscii("Test String")
   image.Comments.Add(commentDataAscii)
   Dim codecs As RasterCodecs = New RasterCodecs()
   codecs.Options.Save.Comments = True
   codecs.Save(image, destStream, RasterImageFormat.Tif, 0)
   ' load the comment together with the image

   Dim comment As RasterCommentMetadata = codecs.ReadComment(destStream, 1, RasterCommentMetadataType.Artist)
   DisplayComment(comment)
End Sub

Remarks

Several formats allow you to store non-image data such as comments, tags, and markers.

You can manipulate the comments of an image by adding/removing RasterCommentMetadata objects to this collection.

By setting the CodecsSaveOptions.Comments property to true before calling RasterCodecs.Save, you can save the comments in this collection when the image is saved into a file.

By setting the CodecsLoadOptions.Markers property to true before calling RasterCodecs.Load, you can load all the markers (if any) into this collection when an image is loaded from a file.

You can use the RasterCodecs.WriteMarkers method to save the markers directly to an existing file.

For more information, refer to Non Image Data.

Requirements

Target Platforms: Silverlight, Windows XP, Windows Server 2003 family, Windows Server 2008 family, Windows Vista, Windows 7, MAC OS/X (Intel Only), Windows Phone 7

See Also