Exif文件格式比其他格式支持更复杂的注释。有关注释的列表,请参见Exif文件注释.
这个例子演示了如何处理未存储为字符串的Exif注释。(有关保存字符串的更简单示例,请参阅WriteComment方法。)
这个例子做了以下工作:
1. |
加载一个图像。 |
2. |
通过从现有文件加载注释来更新注释数组。 |
3. |
反转图像并创建RasterCommentMetadataType。UserComment说明图片已被颠倒的评论。 |
4. |
保存文件。(所有的评论都被保存了下来,包括我们更新的那条。) |
5. |
读取并显示保存文件中的两个注释。其中之一就是我们创建的注释。另一个是使用Exif的注释RasterTagMetadataDataType。URational数据类型。 |
6. |
清理注释数组。 |
VB
私有子WriteCommentsTest()昏暗编解码器作为新的光栅编解码器()模糊srcFileName为字符串=“C: \ LEADTOOLS21 \资源\ \ Image1.cmp图像”模糊destFileName为字符串=“C: \ LEADTOOLS21 \资源\ \ Exif.tif图像”作为光栅图像= codecs.Load(srcFileName)“翻转图片。将flipCmd设置为新的FlipCommand(True)flipCmd.Run (tempImage)向文件中添加用户评论并保存在另一个名字。Dim comment As New RasterCommentMetadata()发表评论。类型= rastercommentmetadatype。UserCommentDim comments As String =“图像被翻转了”Dim data() As Char =注释。comments.Length ToCharArray (0)昏暗的数据评论(8 +评论。长度- 1)作为字节’当你需要写用户评论的前8个字节必须包含“Ascii”词。datcomments (0) = 41datcomments (1) = 53datcomments (2) = 43datcomments (3) = 49datcomments (4) = 49dataccomments (5) = 0dataccomments (6) = 0dataccomments (7) = 0For i As Integer = 0 To comments。长度- 1dataccomments (8 + i) = CType(AscW(data(i)), Byte)下一个'集data属性在评论对象到dataComments数组。comment.FromByte (dataComments)’将用户评论添加到图片的评论集合中tempImage.Comments.Add(评论)codecs.Options.Save.Comments = True编解码器。保存(tempImage, destFileName, RasterImageFormat)。Exif, 24)tempImage.Dispose ()’阅读用户评论并显示出来注释=编解码器。ReadComment(destFileName, 1, rastercommentmetadattype . usercomment)datcomments = comment.GetData()将msg作为字符串="用户评论= "For i As Integer = 0 To dataComments。长度- 7msg = msg + dataccomments (i + 8).ToString下一个对话框。显示(味精,“通知”)终止子
c#
私人无效WriteCommentsTest (){RasterCodecs codecs =新RasterCodecs ();字符串srcFileName =@“C: \ LEADTOOLS21 \资源\ \ Image1.cmp图像”;字符串destFileName =@“C: \ LEADTOOLS21 \资源\ \ Exif.tif图像”;temimage = codecs.Load(srcFileName);//翻转图像。FlipCommand flipCmd =新FlipCommand (真正的);flipCmd.Run (tempImage);//添加一个用户注释到文件中,并以另一个名称保存。RasterCommentMetadata注释=新RasterCommentMetadata ();发表评论。类型= rastercommentmetadattype . usercomment;字符串评论=“图像被翻转了”;字符[] data = comments。ToCharArray (0, comments.Length);字节[] datcomments =新字节[8 +评论。长度];//当你需要写一个用户注释的前8个字节//必须包含"Ascii"字。datcomments [0] = 41;datcomments [1] = 53;datcomments [2] = 43;datcomments [3] = 49;datcomments [4] = 49;datcomments [5] = 0;datcomments [6] = 0;datcomments [7] = 0;为(intI = 0;i < comments.Length;我+ +)datcomments [8 + i] = (字节)数据(我);//将注释对象中的data属性设置为dataComments数组。comment.FromByte (dataComments);//将用户评论添加到图像的评论集合中tempImage.Comments.Add(评论);codecs.Options.Save.Comments =真正的;编解码器。保存(tempImage, destFileName, RasterImageFormat)。今年24岁的Exif);tempImage.Dispose ();//读取用户评论并显示它注释=编解码器。ReadComment(destFileName, 1, rastercommentmetadattype . usercomment);datcomments = comment.GetData();字符串味精="用户评论= ";为(intI = 0;i < (dataccomments . i < (dataccomments . i)长度- 8);我+ +)味精+= (字符) datcomments [i + 8];对话框。显示(味精,“通知”);}
帮助收藏
光栅net|C API|c++类库|HTML5 JavaScript
文档net|C API|c++类库|HTML5 JavaScript
医疗net|C API|c++类库|HTML5 JavaScript
医疗网页浏览器net
188宝金博怎么下载
支持的平台上
.NET、Java、Android和iOS/macOS程序集
C API/ c++类库
HTML5 JavaScript库
您的邮件已发送到支持!应该有人联系你!如果你的事情很紧急,请回来聊天。
聊天时间:
周一至周五,美国东部时间上午8:30至下午6:00
感谢您的反馈!
请再次填写表格开始新的聊天。
所有代理目前都离线。
聊天时间:
星期一至五
上午8:30 -下午6点
如需联系我们,请填写此表格,我们将通过电子邮件与您联系。
