Exif文件格式支持更复杂的评论比其他格式。有关的评论列表,请参考Exif文件注释。
这个案例展示了如何处理Exif评论不存储为字符串。保存字符串(一个简单的例子,请参考WriteComment方法。)
这个示例如下:
1。 |
装载一个图像。 |
2。 |
更新数组从现有的文件通过加载评论发表评论。 |
3所示。 |
逆转并创建一个图像RasterCommentMetadataType.UserComment评论说,照片已经逆转。 |
4所示。 |
保存该文件。(所有的评论都是保存,包括我们更新。) |
5。 |
读取和显示的两个评论从保存的文件。其中一个是我们创建的评论。另一种是使用Exif置评RasterTagMetadataDataType.URational数据类型。 |
6。 |
清理评论数组。 |
VB
私人潜艇WriteCommentsTest ()
昏暗的编解码器新RasterCodecs ()
昏暗的srcFileName字符串=“C: \ LEADTOOLS21 \资源\ \ Image1.cmp图像”
昏暗的destFileName字符串=“C: \ LEADTOOLS21 \资源\ \ Exif.tif图像”
昏暗的tempImage RasterImage = codecs.Load (srcFileName)
“翻转图像。
昏暗的flipCmd新FlipCommand(真正的)
flipCmd.Run (tempImage)
“添加一个用户评论文件并保存它在另一个名字。
昏暗的评论新RasterCommentMetadata ()
发表评论。类型= RasterCommentMetadataType.UserComment
昏暗的言论是字符串=“图像翻转”
昏暗的数据()Char =评论。comments.Length ToCharArray (0)
昏暗的dataComments(8 +评论。- 1)作为字节长度
当你需要写一个用户评论第一个8个字节
“必须包含“Ascii”词。
dataComments (0) = 41
dataComments(1) = 53岁
dataComments (2) = 43
dataComments (3) = 49
dataComments (4) = 49
dataComments (5) = 0
dataComments (6) = 0
dataComments (7) = 0
我作为Integer = 0评论。长度- 1
dataComments (8 + i) = CType (AscW(数据(i)),字节)
下一个
”集数据属性在评论对象dataComments数组。
comment.FromByte (dataComments)
“添加用户评论的评论收集图像
tempImage.Comments.Add(评论)
codecs.Options.Save。评论= True
编解码器。保存(tempImage destFileName RasterImageFormat。Exif, 24)
tempImage.Dispose ()
阅读用户评论和显示它
评论=编解码器。ReadComment (destFileName 1 RasterCommentMetadataType.UserComment)
dataComments = comment.GetData ()
昏暗的味精作为字符串=“用户评论= "
因为我是dataComments Integer = 0。长度- 7
味精=味精+ dataComments .ToString (i + 8)
下一个
MessageBox.Show(味精,“通知”)
终止子
c#
私人无效WriteCommentsTest ()
{
RasterCodecs编解码器=新RasterCodecs ();
字符串srcFileName =@“C: \ LEADTOOLS21 \资源\ \ Image1.cmp图像”;
字符串destFileName =@“C: \ LEADTOOLS21 \资源\ \ Exif.tif图像”;
RasterImage tempImage = codecs.Load (srcFileName);
/ /翻转图像。
FlipCommand flipCmd =新FlipCommand (真正的);
flipCmd.Run (tempImage);
/ /添加一个用户评论文件并将其保存在另一个名字。
RasterCommentMetadata评论=新RasterCommentMetadata ();
发表评论。类型= RasterCommentMetadataType.UserComment;
字符串评论=“图像翻转”;
字符[]data =评论。ToCharArray (0, comments.Length);
字节[]dataComments =新字节(8 + comments.Length);
/ /当你需要写一个用户评论第一个8个字节
/ /必须包含“Ascii”字。
dataComments [0] = 41;
dataComments[1] = 53个;
dataComments [2] = 43;
dataComments [3] = 49;
dataComments [4] = 49;
dataComments [5] = 0;
dataComments [6] = 0;
dataComments [7] = 0;
为(int我= 0;我< comments.Length;我+ +)
dataComments (8 + i) = (字节)数据(我);
/ /设置数据属性在评论dataComments数组对象。
comment.FromByte (dataComments);
/ /添加用户评论的评论收集图像
tempImage.Comments.Add(评论);
codecs.Options.Save。评论=真正的;
编解码器。保存(tempImage destFileName RasterImageFormat。今年24岁的Exif);
tempImage.Dispose ();
/ /读取用户评论和显示它
评论=编解码器。ReadComment (destFileName 1 RasterCommentMetadataType.UserComment);
dataComments = comment.GetData ();
字符串味精=“用户评论= ";
为(int我= 0;我< (dataComments。长度- 8);我+ +)
味精+ = (字符)dataComments (i + 8);
MessageBox.Show(味精,“通知”);
}
帮助收藏
光栅net|C API|c++类库|HTML5 JavaScript
文档net|C API|c++类库|HTML5 JavaScript
医疗net|C API|c++类库|HTML5 JavaScript
医疗Web查看器net
188宝金博怎么下载
支持的平台上
net, Java, Android和iOS / macOS组件
C / c++类库的API
HTML5 JavaScript库
你的邮件已经发送到支持!有人应该联系!如果你的问题是紧急请回到聊天。
聊天时间:
周一——周五,上午6点等
谢谢你的反馈!
请填写表单重新开始一个新的聊天。
所有代理目前离线。
聊天时间:
周一-周五
早上8:30 - 6点
联系我们请填写这张表格,我们将通过电子邮件联系你。