NSDataに変換したいCGImageRefがあるファイルに保存されていません。今、私はイメージをいくつかの一時的な場所に保存して、これをNSDataに取得することでこれを行います。イメージを保存せずにこれを行うにはどうすればよいですか?CGImageRefをNSDataに変換する
CGImageRef img = [[self system_Application] getScreenShot];
NSString *tempDirectory = NSTemporaryDirectory();
CFURLRef url = (CFURLRef)[NSURL fileURLWithPath:[NSString stringWithFormat:@"%@/abc.jpg",tempDirectory]];
CGImageDestinationRef destination = CGImageDestinationCreateWithURL(url, kUTTypePNG, 1, NULL);
CGImageDestinationAddImage(destination, img, nil);
if(!CGImageDestinationFinalize(destination))
NSLog(@"Failed to write Image");
NSData *mydata = [NSData dataWithContentsOfFile:[NSString stringWithFormat:@"%@/abc.jpg",tempDirectory]];
あなたはそこにいくつかの情報を見つけて://stackoverflow.com/questions/19527902/converting-nsdata-to-cgimage-and-then-ba ck-to-nsdata-makes-the-file-too-big – Larme
この回答は私が現在使っているのと同じ考え方を使っています。しかし、ディスクに書き込んだり読んだりすると、私はそれを変更したい。だから何かを提案してください – CodingIsComplex