Sample code for 30+ languages & platforms
Xbase++ Requires Chilkat v11.4.0+

Simple AI Image Generation

See more AI Examples

Create an image by providing a text description.

Chilkat Xbase++ Downloads

Xbase++
LOCAL nSuccess
LOCAL oAi
LOCAL oAskParams
LOCAL oBdImageData

nSuccess := 0

//  This example assumes the Chilkat API to have been previously unlocked.
//  See Global Unlock Sample for sample code.

oAi := CreateObject("Chilkat.Ai")

oAi:Provider := "openai"

//  Use your provider's API key.
oAi:ApiKey := "MY_API_KEY"

//  Choose a model.
oAi:Model := "gpt-5.6-terra"

oAskParams := CreateObject("Chilkat.JsonObject")
oAskParams:UpdateString("image.output_format", "jpeg")
oAskParams:UpdateString("image.size", "1024x1024")
oAskParams:UpdateString("image.quality", "low")
oAi:SetAskParams(oAskParams)

oAi:InputAddText("Generate a small, cute illustration of a gray tabby cat hugging a happy otter wearing an orange scarf")

//  Ask the AI for image output.
nSuccess := oAi:Ask("image")
IF (nSuccess == 0)
    ? oAi:LastErrorText
    oAi:destroy()
    oAskParams:destroy()
    RETURN
ENDIF

//  Get the image response data.
oBdImageData := CreateObject("Chilkat.BinData")
nSuccess := oAi:GetOutputBd(oBdImageData)
IF (nSuccess == 0)
    ? oAi:LastErrorText
    oAi:destroy()
    oAskParams:destroy()
    oBdImageData:destroy()
    RETURN
ENDIF

oBdImageData:WriteFile("c:/aaworkarea/out.jpg")

? "Success."

oAi:destroy()
oAskParams:destroy()
oBdImageData:destroy()