这可能不是问这个问题的合适地方,因为看起来这个问题与实际形象有关,但我希望此前有人见过这个问题。
我正在从服务器加载图像。首先,我拍摄照片,从服务器上传,然后在应用程序的不同部分查看。这是当我看到我刚刚上传的任何图像的宽高比远离时。见下图一。我上次上传的图片没有这些问题。不同之处在于我必须将之前的图像拉入photoshop以旋转它们。
我得到了我的node.js服务器来为我定位它们然后当我在UIImageView中加载它们时它们被挤压并拉伸。在浏览器或我的计算机上查看它们正常显示它们。出于好奇,我在photoshop中打开了一个,根本没有操纵它并将其保存。当我将它上传到我的服务器并再次在iPhone上查看它看起来应该是这样。见下面的第二张图片。
同样,所有其他图像加载得很好,但那些没有通过Photoshop的图像都显得很糟糕。
有什么想法?在此先感谢您的帮助。
编辑:在浏览器中查看照片时,调整大小时也会拉伸照片。当我单击以查看完整大小然后再次单击以查看缩放以适合屏幕时,它们看起来很好。只是想在那里抛出更多信息,看看是否有人知道该怎么做。
答案 0 :(得分:0)
试试这段代码,
- (UIImage*)imageWithImage:(UIImage*)images
scaledToSize:(CGSize)newSize;
{
UIGraphicsBeginImageContext( newSize );
[images drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}
然后以这种方式设置imageview imaeg
imageView.image = [self imageWithImage:mi.imageView.image scaledToSize:CGSizeMake(78, 78)];
答案 1 :(得分:0)
我不确定问题究竟是什么,但我发现了一种解决方案。
首先,我从4s开始尝试,以确保它不是我的手机的问题,我得到了相同的结果。我发现如果我从图像中删除exif数据,它似乎工作得很好。我最终做的是在我的服务器上使用一个包,GraphicsMagic,并通过autoOrient运行图像。完成此操作并保存到磁盘后,图像在浏览器和iPhone上都可以正常加载。如果有人对导致这种情况的原因有任何解释,那就太好了。
谢谢!