我将图片上传到服务器然后处理图片。有趣的是,上传图像后,关键字丢失了。虽然有其他图像属性。
解析代码时没有问题,因此请忽略以下代码段。
using (var xmp = Xmp.FromFile(workingFilePath, XmpFileMode.ReadOnly))
{
var iptc = new Iptc(xmp);
var Keywords = iptc.Keywords;
}
注意:我使用FineUploader上传图片。
FineUploader配置 -
var manualUploader = new qq.FineUploader({
element: document.getElementById('fine-uploader-manual-trigger'),
template: 'qq-template-manual-trigger',
request: {
endpoint: '/image/uploadimage',
params: {
datestamp: datetimeStamp
}
},
callbacks: {
},
autoUpload: false,
multiple: true
});
qq(document.getElementById("trigger-upload")).attach("click", function () {
manualUploader.uploadStoredFiles();
});
Fineuploader日志 -
[Fine Uploader 5.10.1] Received 1 files.
[Fine Uploader 5.10.1] Attempting to validate image.
[Fine Uploader 5.10.1] Generating new thumbnail for 0
[Fine Uploader 5.10.1] Attempting to draw client-side image preview.
[Fine Uploader 5.10.1] Attempting to determine if _DSE8404.jpg can be rendered in this browser
[Fine Uploader 5.10.1] First pass: check type attribute of blob object.
[Fine Uploader 5.10.1] Second pass: check for magic bytes in file header.
[Fine Uploader 5.10.1] '_DSE8404.jpg' is able to be rendered in this browser
[Fine Uploader 5.10.1] Moving forward with EXIF header parsing for '_DSE8404.jpg'
[Fine Uploader 5.10.1] EXIF Byte order is little endian
[Fine Uploader 5.10.1] Found 10 APP1 directory entries
[Fine Uploader 5.10.1] Successfully parsed some EXIF tags
[Fine Uploader 5.10.1] Sending simple upload request for 0
[Fine Uploader 5.10.1] xhr - server response received for 0
修改: 看起来我发现了这个问题。标签中有一些冰岛语字符。那就是问题所在。任何人都知道如何解决这个问题!
最新修改 如果这些标签已从Adobe Photoshop Lightroom添加,则面临该问题。但是如果通过更新属性从Windows机器添加相同的标签,它就可以工作!
答案 0 :(得分:3)
您的问题可能有两个原因:
在某些时候,您重写您的图片,可能是由于其配置无法正确处理标签或将其剥离的类。 如果您只保存从客户端收到的确切二进制内容,您还将检索原始标记,前提是您的图像文件的格式与预期的一致。
如果您的图像文件存储方式与预期不同,则可能无法检索标记,具体取决于您提取标记的方式。
例如,JPG/JPEG
标签可以以各种方式存储(XMP beeing one)。
查看following link了解更多详情。您会看到还有其他方式来存储代码(例如EXIF
,Extended XMP
,QVCI
,FLIR
)。
要检索这些标记,您必须根据它们嵌入图像文件的方式对其进行解析
从您发布的服务器端代码,您似乎只解析XMP标记。根据用于编码原始图像的软件,标签可以以其他格式存储。
虽然看起来很明显,但我的建议是:
JPEG
文件因其可能存储的各种方式而难以正确处理。