Objective-C
Objective-C
AI Modify Existing Image with Text Prompt
See more AI Examples
Uses an AI text prompt and uploaded image data to modify an existing image and receive the modified output.Chilkat Objective-C Downloads
#import <CkoBinData.h>
#import <CkoAi.h>
#import <CkoJsonObject.h>
BOOL success = NO;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
// Load the data from an existing image.
CkoBinData *bdImageData = [[CkoBinData alloc] init];
success = [bdImageData LoadFile: @"qa_data/jpg/kid_blue_coat.jpg"];
if (success == NO) {
NSLog(@"%@",bdImageData.LastErrorText);
return;
}
CkoAi *ai = [[CkoAi alloc] init];
ai.Provider = @"openai";
// Use your provider's API key.
ai.ApiKey = @"MY_API_KEY";
// Choose a model.
ai.Model = @"gpt-5";
CkoJsonObject *askParams = [[CkoJsonObject alloc] init];
[askParams UpdateString: @"image.output_format" value: @"jpeg"];
[ai SetAskParams: askParams];
[ai InputAddImageData: bdImageData summary: @""];
[ai InputAddText: @"Modify the image by replacing the blue coat with a Metallica T-shirt."];
// Give the AI some time (2 minutes).
ai.IdleTimeoutMs = [NSNumber numberWithInt:120000];
// Ask the AI for image output.
success = [ai Ask: @"image"];
if (success == NO) {
NSLog(@"%@",ai.LastErrorText);
return;
}
// Get the image response data.;
success = [ai GetOutputBd: bdImageData];
if (success == NO) {
NSLog(@"%@",ai.LastErrorText);
return;
}
[bdImageData WriteFile: @"c:/aaworkarea/out.jpg"];
NSLog(@"%@",@"Success.");
// -------------------------------
// Sample Input:
// -------------------------------
//
// -------------------------------
// Sample Output:
// -------------------------------
// 