我似乎有存储问题CGRect成NSDictionary.我正在使用的代码:
dictionary = [NSDictionary dictionaryWithObjectsAndKeys:@"Crocodile", [NSValue valueWithCGRect:CGRectMake(100,100,200,200)], nil];
Run Code Online (Sandbox Code Playgroud)
从我读过的内容来看,我应该将其包装CGRect成一个NSValue并将其存储到字典中.
但是,当我尝试使用NSLog它时,该值将返回{{0,0},{0,0}}
NSLog(@"Crocodile value is: %@", NSStringFromCGRect([[dictionary objectForKey:@"Crocodile"] CGRectValue]));
Run Code Online (Sandbox Code Playgroud)
我检查了我的字典计数,似乎插入了项目.我不确定这在哪里失败了.我还试图通过创建一个CGRectvar,然后是一个NSValuevar 来手动分解它,并将其粘贴到具有相同结果的字典中.
任何帮助赞赏.谢谢
谢谢.
我想弄清楚CGPoint是否位于图像的形状内.图像是简单的黑色形状,例如下面附着的两个.我想创建一个方法来确定CGPoint是否位于该形状的黑色区域内.
我认为这需要两件事:1)将图像转换为可以用代码读取的东西(不确定这将使用什么样的图像处理或如何)
2)使用它作为参考来确定CGPoint是否位于其中.
任何帮助或想法赞赏.我之前从未做过图像处理类型的编码.谢谢!

所以我试图将NSRect转换为CGRect.我使用的NSRectToCGRect()是精确复制所有内容,但没有考虑y原点轴.
问题:(0,0)的CGRect原点是左上角.NSRect原点(0,0)位于左下角.
因此,一个NSRect (0,0,100,100)盒子位于屏幕的左下方,而一个CGRect (0,0,100,100)盒子位于屏幕的左上角.
我有一个通过基本数学修复y-origin的hack:
fixedOriginY = screenHeight - NSRect.size.height - NSRect.origin.y
Run Code Online (Sandbox Code Playgroud)
因此,相当于一个NSRect (0,0,100,100)实际上CGRect (0,800,100,100)(在我的900px高度MBA).但是我不喜欢这个,我觉得它会破坏视网膜或未来并发症的问题.
有没有人有关于如何正确地将NSRect转换为CGRect的解决方案或想法?
我正在从iPad照片库中抓取一些照片.我在横向模式下拍了几张测试照片,左边是iPad主页按钮,右边是.
所以在我的应用程序中,由于某种原因,一些照片显示出颠倒.我检查了他们的imageOrientation财产,他们都是0(意思是他们UIImageOrientationUp).这意味着我甚至不知道我需要旋转哪些照片.
发生了什么,我怎么知道哪些照片需要旋转?谢谢
我最近发现了一篇关于如何将Photoshop PDF文件用作矢量图像的博客文章:http://mattgemmell.com/2012/02/10/using-pdf-images-in-ios-apps/
基本上你可以实现质量可扩展性,我想节省文件大小.
但是,压缩为PDF而不是PNG似乎会破坏透明度,这意味着默认情况下会获得白色背景.
这似乎是一种有趣的技术,但如果我们的PDF可以某种方式保留像PNG这样的透明部分,那将会更有用.有没有人对如何进一步实现这种效果有任何想法或技巧?谢谢
我有一个非常奇怪的问题.我的OSX应用程序正在生成基于屏幕投射的mp4视频.出于某种原因,如果我在Quicktime或任何基于OSX的AVPlayer中打开此视频,它将在第0帧之前大约14-15帧开始.如果我使用Chrome或Firefox打开mp4,它实际上将在第0帧开始播放.
什么可能导致忽略开始帧?这是一个计时器倒计时的屏幕截图,比较Quicktime与Firefox在零时间.注意Firefox播放器如何在9:55启动,而Quicktime播放器则跳到9:54.

这是我的样本mp4文件,如果你想亲眼看看.
谢谢
我正在查看一个 Apple 项目,该项目演示了如何使用 TrueDepth 前置摄像头将人与背景分开。你可以在这里看到:
它工作得很好,但是有时如果我旋转我的脸,深度图会丢失一些数据点并剪掉我的脸和耳朵的部分。你可以在这里看到这个例子:https : //streamable.com/cstex
有没有人对如何改进这一点有任何想法?该AVPortraitEffectsMatte对象是完美的,如果你使用AVCapturePhotoOutput,但它似乎并没有对实时视频输入可作为处理时间过长,更新帧。
我注意到Apple的Clips应用程序具有完美的效果,不会夹住我的任何脸或耳朵,并且提供了良好的帧率:https : //streamable.com/5n96h 由于他们的应用程序不会丢失细节,因此不能仅仅依靠关于深度数据。或者,他们正在通过模型运行他们的深度数据以改进它(可能类似于他们用来生成 AVPortraiEffectsMatte 的专有模型)
关于如何获得类似结果或他们如何实现的任何想法?
我使用 Django 作为后端,并且遇到了跨源问题,我corsheaders在设置中使用包修复了这些问题。到目前为止,我所有的 GET 端点都可以工作,这要归功于:
CORS_ORIGIN_ALLOW_ALL = True
Run Code Online (Sandbox Code Playgroud)
但是,我现在正在尝试访问 django 后端上的静态文件,其位置如下:
http://localhost:8000/static/image.jpg
Run Code Online (Sandbox Code Playgroud)
然而,浏览器客户端会像以前一样收到熟悉的错误:
Access to XMLHttpRequest at ... from origin ... has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?谢谢
我正在构建一个允许用户编辑文件的 MacOS 应用程序。为了访问文件,我使用了一个安全范围的书签,如下所示:
do {
self.securityScopedBookmark = try asset?.url.bookmarkData(options: .withSecurityScope, includingResourceValuesForKeys: nil, relativeTo: nil)
} catch {
print("failed bookmark. error info: \(error)")
}
Run Code Online (Sandbox Code Playgroud)
当用户完成并且 NSDocument 被取消初始化时,我停止访问书签,如下所示:
deinit {
if let securityScopedBookmark = self.securityScopedBookmark {
do {
var isStale: Bool = false
let url = try URL.init(resolvingBookmarkData: securityScopedBookmark, options: [.withoutUI, .withSecurityScope], relativeTo: nil, bookmarkDataIsStale: &isStale)
url.stopAccessingSecurityScopedResource()
} catch let error as NSError {
print("Bookmark Access Fails: \(error.description)")
}
}
}
Run Code Online (Sandbox Code Playgroud)
但是,当尝试调用 .stopAccessingSecurityScopedBookmark() 时,我收到了几个日志错误。
[scoped] handle 0: sandbox_extension_release error [22: Invalid argument] …Run Code Online (Sandbox Code Playgroud) macos sandbox entitlements appstore-sandbox security-scoped-bookmarks
我有一个方法来调整CGImageRef和返回CGImageRef.问题是最后几行,我需要以某种方式释放,但之后返回.有任何想法吗?谢谢
-(CGImageRef)resizeImage:(CGImageRef *)anImage width:(CGFloat)width height:(CGFloat)height
{
CGImageRef imageRef = *anImage;
CGImageAlphaInfo alphaInfo = CGImageGetAlphaInfo(imageRef);
if (alphaInfo == kCGImageAlphaNone)
alphaInfo = kCGImageAlphaNoneSkipLast;
CGContextRef bitmap = CGBitmapContextCreate(NULL, width, height, CGImageGetBitsPerComponent(imageRef), 4 * width, CGImageGetColorSpace(imageRef), alphaInfo);
CGContextDrawImage(bitmap, CGRectMake(0, 0, width, height), imageRef);
CGImageRef ref = CGBitmapContextCreateImage(bitmap);
CGContextRelease(bitmap);
CGImageRelease(ref); //issue here
return ref;
}
Run Code Online (Sandbox Code Playgroud)