Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通过更新元数据或EXIF信息旋转图像_C#_Asp.net Mvc 3_Metadata_Jpeg_Exif - Fatal编程技术网

C# 通过更新元数据或EXIF信息旋转图像

C# 通过更新元数据或EXIF信息旋转图像,c#,asp.net-mvc-3,metadata,jpeg,exif,C#,Asp.net Mvc 3,Metadata,Jpeg,Exif,我正在开发一个图像处理实用程序。要求通过更新其元数据(exif信息)来旋转图像。我也试过这样做,但没有成功。请提出一些建议?这必须使用手动过程,而不是EXIF数据 所谓手动,我指的是移动像素。您可以在网上找到如何使用helper类(可能是.NET Framework,具体取决于您开发的平台)实现这一点的示例 示例:据我所知,您不希望实际变换图像并旋转其像素数据,而是“显示”旋转的图像 我以前从来没有想过这件事,也不熟悉EXIF等,而是我的头顶 在浏览器中显示方向 真正棘手的是在浏览器中显示它 下

我正在开发一个图像处理实用程序。要求通过更新其元数据(exif信息)来旋转图像。我也试过这样做,但没有成功。请提出一些建议?

这必须使用手动过程,而不是EXIF数据

所谓手动,我指的是移动像素。您可以在网上找到如何使用helper类(可能是.NET Framework,具体取决于您开发的平台)实现这一点的示例


示例:

据我所知,您不希望实际变换图像并旋转其像素数据,而是“显示”旋转的图像

我以前从来没有想过这件事,也不熟悉EXIF等,而是我的头顶

在浏览器中显示方向

真正棘手的是在浏览器中显示它

下面是几个功能请求,讨论如何在浏览器中遵循方向:

火狐:

铬:

我还没有完全阅读这些请求,所以我不确定它们的确切状态,但可以为您阅读

获取EXIF数据

如果浏览器不支持内置的EXIF方向(它可能不支持),首先需要获得EXIF数据,您可以通过查看从服务器提取的原始二进制数据在客户端执行此操作

但我猜在服务器端做会容易得多

这是一个用于获取EXIF数据的c#库。我没有找到它,这里讨论了它:

你也可以

  • 通过服务器端代码手动旋转它(实际操作像素-可能需要加载库来执行此操作,可能内置在.net中)
  • 使用Flash旋转它(事实上,我认为Flash可能能够直接读取EXIF)
  • 使用HTML画布进行旋转(可能使用jquery rotate或类似工具)

我敢肯定,仅仅通过更改图像的exif数据是无法旋转图像的。同意,exif只是元数据。它不会影响图像向用户显示的方式,除非打开的程序专门寻找它。@Mudd'Dib-知道怎么做吗?@Kevin-实际上这些图像是用数码相机拍摄的。现在,在上传到服务器时,我想将它们旋转到实际方向,以便用户能够以正确的方向看到图像。你知道如何做到这一点吗?我被这件事弄糊涂了,不知道EXIF数据中包含的方位信息。这是对它的描述,非常有趣: