跳轉到內容

Futurebasic/程式設計/繪圖

來自華夏公益教科書,開放的書籍,開放的世界

在螢幕上獲取影像(已棄用)

[編輯 | 編輯原始碼]

要將影像顯示在螢幕上(使用較舊的已棄用方法),您必須將影像檔案包含在專案目錄中,並在專案中包含 Core Graphics 工具箱標頭檔案。還有一個函式可以從 jpg 或 png 檔案建立 CG imageRef。

包含資源 "pBoard.png" 包含 "Tlbx CoreGraphics.incl"

// 從 jpg 或 png 影像建立 CGImageRef [KenS] 區域性 fn createCGImageRef( fileName as CFStringRef ) as CGImageRef

 dim as CFURLRef url
 dim as CGImageRef imageRef : imageRef = 0
 dim as CGDataProviderRef dataProvider

url = fn CFBundleCopyResourceURL( fn CFBundleGetMainBundle(), filename, 0, 0 ) 長整型 如果 ( url )

 dataProvider = fn CGDataProviderCreateWithURL( url )
 long if ( dataProvider )

選擇

 case fn CFStringHasSuffix( fileName, fn CFSTR( ".jpg" ) )
 imageRef = fn CGImageCreateWithJPEGDataProvider( dataProvider, NULL, _false, _kCGRenderingIntentDefault )
 case fn CFStringHasSuffix( fileName, fn CFSTR( ".png" ) )
 imageRef = fn CGImageCreateWithPNGDataProvider( dataProvider, NULL, _false, _kCGRenderingIntentDefault )

結束選擇 fn CGDataProviderRelease( dataProvider ) 結束如果 CFRelease( url ) 結束如果

結束 fn = imageRef

在專案中包含了上述函式和包含檔案後,您可以將影像新增到視窗中 - 它採用按鈕的形式,其內容由 CG imageRef 指向的影像設定,如下所示

// 顯示背景影像 dim as rect r dim as ControlButtonContentInfo content SetRect( @r, 20, 20, 532, 532 ) 外觀 按鈕 99, , , "", @r , _kControlImageWellProc content.contentType = _kControlContentCGImageRef content.u.imageRef = fn createCGImageRef( @"pBoard.png" ) fn SetButtonData( 99, _kControlImageWellPart, _kControlImageWellContentTag, SizeOf( content ), content )

華夏公益教科書