NSImage *image = [[[NSImage alloc] initWithContentsOfURL:url] autorelease];NSImageVIEw *newImageVIEw = nil;newImageVIEw = [[NSImageVIEw alloc] initWithFrame:[self bounds]];[newImageVIEw setimage:image];[newImageVIEw setautoresizingMask:NSVIEwWIDthSizable | NSVIEwHeightSizable];
NSImageVIEw将自动调整NSimage的大小
如何获得NSImage的实际显示尺寸?
欢迎任何评论
解决方法 我有这样的iOS方法,你可以适应它:@implementation UIImageVIEw (additions)- (CGSize)imageScale { CGfloat sx = self.frame.size.wIDth / self.image.size.wIDth; CGfloat sy = self.frame.size.height / self.image.size.height; CGfloat s = 1.0; switch (self.contentMode) { case UIVIEwContentModeScaleAspectFit: s = fminf(sx,sy); return CGSizeMake(s,s); break; case UIVIEwContentModeScaleAspectFill: s = fmaxf(sx,s); break; case UIVIEwContentModeScaletoFill: return CGSizeMake(sx,sy); default: return CGSizeMake(s,s); }}- (CGRect)imageRect { CGSize imgScale = [self imageScale]; return CGRectCenteredInCGRect(CGRectFromCGSize(CGSizeScale(self.image.size,imgScale.wIDth,imgScale.height)),self.frame);}@endCGRect CGRectCenteredInCGRect(CGRect inner,CGRect outer) { return CGRectMake((outer.size.wIDth - inner.size.wIDth) / 2.0,(outer.size.height - inner.size.height) / 2.0,inner.size.wIDth,inner.size.height);}总结
以上是内存溢出为你收集整理的cocoa – 在NSImageView上获取实际的显示图像大小全部内容,希望文章能够帮你解决cocoa – 在NSImageView上获取实际的显示图像大小所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)