我想实现类似Macs Selection屏幕截图的东西,我可以通过拖动光标选择屏幕的一部分,并获得结果坐标(CGRect)。Mac:屏幕截图选择实施? (选择屏幕的一部分的能力)
因此,像这样:
我一直在寻找AVScreenShack这听起来像它应该这样做:https://developer.apple.com/library/mac/samplecode/AVScreenShack/Introduction/Intro.html
但它似乎并没有对我的工作。我最终得到的东西看起来像:
,当我尝试设置的坐标它不会做任何事情。
我看,这是相关的代码,我相信:
- (IBAction)setDisplayAndCropRect:(id)sender
{
for (NSScreen* screen in [NSScreen screens])
{
NSLog(@"SCREEN %@", screen);
NSRect frame = [screen frame];
NSWindow * window = [[NSWindow alloc] initWithContentRect:frame styleMask:NSBorderlessWindowMask backing:NSBackingStoreBuffered defer:NO];
[window setBackgroundColor:[NSColor blackColor]];
[window setAlphaValue:.5];
[window setLevel:kShadyWindowLevel];
[window setReleasedWhenClosed:YES];
DrawMouseBoxView* drawMouseBoxView = [[DrawMouseBoxView alloc] initWithFrame:frame];
drawMouseBoxView.delegate = self;
[window setContentView:drawMouseBoxView];
[window makeKeyAndOrderFront:self];
}
[[NSCursor crosshairCursor] push];
}
因此,也许它做的比我想要的东西以外的东西(能够选择当前视图的区域)。
有没有人做过这样的事情?我认为必须有类似的东西。
谢谢
您是否已经解决了您的问题,还是您仍在寻找解决方案? –
@ThomasJohannesmeyer是的,它已经解决了。它是这个项目的一部分:https://github.com/Jonovono/Cutter。 (它实际上是这样,所以你可以拍摄一个选择的屏幕视频,而不是屏幕截图。) – Jonovono
您的解决方案是否可以使用两台以上的显示器?因为即使是Apple样本也没有。 –