gpt4 book ai didi

c# - asp.net - 将图像上传到服务器后图像关键字丢失

转载 作者:可可西里 更新时间:2023-11-01 08:12:28 26 4
gpt4 key购买 nike

我正在将图像上传到服务器,然后处理图像。有趣的是,上传图片后,图片关键字丢失了。尽管还有其他图像属性。

enter image description here

解析标签没有问题,请忽略下面的代码片段。

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

编辑:看来我发现了问题。有一些标签中的冰岛字符。这就是问题所在。任何人都知道如何解决这个问题!

最新编辑如果这些标签是从 Adob​​e Photoshop Lightroom 添加的,那么就会面临这个问题。但是,如果通过更新属性从 Windows 计算机添加相同的标签,它就可以工作!

最佳答案

您的问题可能有两个原因:

  1. 在某些时候,您正在重写您的图片,可能使用的类无法正确处理标签或由于其配置而将其删除。
    如果您只是保存从客户端收到的确切二进制内容,您还将检索原始标签,前提是图像文件的格式符合您的预期。

  2. 如果您的图像文件的存储方式与您预期的不同,则可能无法检索标签,具体取决于您提取它们的方式。
    例如,JPG/JPEG 标签可以以多种方式存储(XMP bee one)。检查following link更多细节。您会看到还有其他存储标签的方式(例如 EXIFExtended XMPQVCIFLIR) .
    要检索这些标签,您必须根据它们嵌入图像文件的方式来解析它们。
    从您发布的服务器端代码来看,您似乎只解析 XMP 标签。根据用于对原始图像进行编码的软件,标签可能会以其他格式存储

虽然看起来很明显,但我的建议是:

  1. 确保您的工作流程不涉及在客户端发送的内容与保存在服务器。
  2. 也就是说,您还必须确保以适当的方式提取标签,具体取决于标签的格式。

JPEG 文件可能真的很难正确处理,因为它们的存储方式多种多样。

关于c# - asp.net - 将图像上传到服务器后图像关键字丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39712663/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com