1
我試着調整Travis的例子,他上週給我這裏(C4 saving part of an image)將屏幕保存爲C4Image。 我認爲應該這樣工作:C4保存屏幕爲C4Image
CGFloat scale = 5.0;
//begin an image context
CGSize rect=CGSizeMake(self.canvas.width, self.canvas.height);
UIGraphicsBeginImageContextWithOptions(rect, NO, scale);
//create a new context ref
CGContextRef c = UIGraphicsGetCurrentContext();
//render the original image into the context
[self.canvas renderInContext:c];
//grab a UIImage from the context
UIImage *newUIImage = UIGraphicsGetImageFromCurrentImageContext();
//end the image context
UIGraphicsEndImageContext();
//create a new C4Image
self.currentAlphabetImage = [C4Image imageWithUIImage:newUIImage];
C4Log(@"self.currentAlphabetImage:%@", self.currentAlphabetImage);
self.currentAlphabetImage.width=self.canvas.width/2;
self.currentAlphabetImage.center=self.canvas.center;
self.currentAlphabetImage.backgroundColor=navBarColor;
[self.canvas addImage:self.currentAlphabetImage];
...即使日誌給我
self.currentAlphabetImage:C4Image: 0x15840970; baseClass = UIControl;
frame = (0 0; 320 568); layer = C4Layer: 0x15842590>>
...什麼都沒有顯示在屏幕上......但是,是的,有上的東西應該被捕獲的畫布...
而且,我不知道什麼是錯的。還有其他嘗試使用objectivec不工作(例如,iOS Screenshot part of the screen)
您的代碼對我的作品...... 2個季度,僅僅是明確的:1)在你的'C4WorkSpace.m運行此代碼'? 2)如果沒有,在這個畫布上有什麼東西在運行? –
不,它沒有在主畫布上運行,2是在它正在運行的空間的畫布上有東西。我明天早上再試一次 – suMi
好的,所以C4CanvasController是一個子類。我會在明天早上測試這個。 –