请让我知道可能的解决方案.
解决方法 这是我用过的一个很好的样本 – http://weblog.scifihifi.com/2005/06/25/how-to-resize-an-nsimage/从该示例中,您可以将resizedData写入文件 – 这将是tiff格式的调整大小的输出.
更新:
这里是NSImage类别实现,它允许使用指定的DPI保存NSImage实例:
@interface NSImage (DPIHelper)- (voID) saveAsImageType: (NSBitmAPImagefileType) imageType withDPI: (CGfloat) dpiValue atPath: (Nsstring *) filePath;@end@implementation NSImage (DPIHelper)- (voID) saveAsImageType: (NSBitmAPImagefileType) imageType withDPI: (CGfloat) dpiValue atPath: (Nsstring *) filePath{ NSBitmAPImageRep *rep = [[self representations] objectAtIndex: 0]; NSSize pointsSize = rep.size; NSSize pixelSize = NSMakeSize(rep.pixelsWIDe,rep.pixelsHigh); CGfloat currentDPI = ceilf((72.0f * pixelSize.wIDth)/pointsSize.wIDth); NSLog(@"current DPI %f",currentDPI); NSSize updatedPointsSize = pointsSize; updatedPointsSize.wIDth = ceilf((72.0f * pixelSize.wIDth)/dpiValue); updatedPointsSize.height = ceilf((72.0f * pixelSize.height)/dpiValue); [rep setSize:updatedPointsSize]; NSData *data = [rep representationUsingType: imageType propertIEs: nil]; [data writetofile: filePath atomically: NO];}@end
你可以像这样使用它:
NSImage *theImage2 = [NSImage imagenamed:@"image.jpg"];[theImage2 saveAsImageType:NSJPEGfileType withDPI: 36.0f atPath: @"/Users/<user-name>/image-updated.jpg"];总结
以上是内存溢出为你收集整理的如何在objective-c中更改图像分辨率全部内容,希望文章能够帮你解决如何在objective-c中更改图像分辨率所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)