C# System.Drawing.Image为portait图像交换宽度和高度
我有一张图片,尺寸是1440(宽),2560(高),所以是肖像 但是,System.Drawing.Image方法返回的宽度为2560,高度为1440 我尝试了不同的方法来获得正确的宽度和高度,但没有一种有效,有人能帮忙吗C# System.Drawing.Image为portait图像交换宽度和高度,c#,image,resize,system.drawing,C#,Image,Resize,System.drawing,我有一张图片,尺寸是1440(宽),2560(高),所以是肖像 但是,System.Drawing.Image方法返回的宽度为2560,高度为1440 我尝试了不同的方法来获得正确的宽度和高度,但没有一种有效,有人能帮忙吗 FileStream fs = new FileStream(OriginalFileLocation, FileMode.Open); System.Drawing.Image sourcefile = System.Drawing.Image.FromStream(fs)
FileStream fs = new FileStream(OriginalFileLocation, FileMode.Open);
System.Drawing.Image sourcefile = System.Drawing.Image.FromStream(fs);
---------其他方式----------------
System.Drawing.Image source = System.Drawing.Image.FromFile(OriginalFileLocation);
-------另一种方式-------------
我对这里的前提非常怀疑。无论如何,请阅读并拍摄照片。您确定图像没有旋转90度吗?在图像查看器中打开“旋转”按钮时,是否必须单击该按钮?仅仅因为高度大于宽度并不意味着它是肖像。你为什么认为“尺寸1440(宽度),2560(高度)”?这可能是因为它是用旋转相机拍摄的。手机等照片的自动旋转不是通过实际旋转图像来保存的,而是通过向图像中添加EXIF信息来保存的,该信息指示图像查看器应用程序需要旋转图像。您需要以某种方式打开文件中的EXIF信息并检查旋转标志。感谢您的帮助,因为我通过手机拍摄了这张照片,它是纵向的。我上传到电脑上,还可以。然而,当我试图上传到我正在建设的网站,然后它似乎是旋转,虽然我没有做任何事情来旋转它,但它只是不正确。
Bitmap upimage1 = new Bitmap(OriginalFileLocation);