Components All New MacOS Windows Linux iOS
Examples Mac & Win Server Client Guides Statistic FMM Blog Deprecated Old

CGImageSource.CreateWithPath

Creates an image source that reads from a location specified by a Path.

Component Version macOS Windows Linux Server iOS SDK
CGImageSource 3.4 ✅ Yes ❌ No ❌ No ✅ Yes, on macOS ✅ Yes
MBS( "CGImageSource.CreateWithPath"; Path )   More

Parameters

Parameter Description Example
Path The platform specific native file path. "/test.jpg"

Result

Returns the reference number for this image source or error message.

Description

Creates an image source that reads from a location specified by a Path.
Don't forget to call CGImageSource.Release later to release the reference number.

This function requires a native path. Use Path.FileMakerPathToNativePath to convert a FileMaker path to a native path if required. If you like to have the user choose the path, you can use FileDialog functions.
For Server be aware that server has limited permissions and may not be able to access all files on a computer.

Examples

Load image and show it:

Set Variable [ $path ; Value: "/Users/cs/Pictures/IMG_3625.jpg" ]
Set Variable [ $img ; Value: MBS( "CGImageSource.CreateWithPath"; $path ) ]
Set Field [ test::output ; MBS( "CGImageSource.ImageAtIndex"; $img; 0) ]
Set Variable [ $r ; Value: MBS( "CGImageSource.Release"; $img ) ]

Read HEIC image:

Set Variable [ $path ; Value: "/Users/cs/Desktop/IMG_3552.HEIC" ]
Set Variable [ $ImageSource ; Value: MBS( "CGImageSource.CreateWithPath"; $path) ]
If [ MBS("IsError") = 0 ]
    # you can get metadata as JSON to check later...
    Set Variable [ $$MetaData ; Value: MBS( "CGImageSource.Properties"; $ImageSource ) ]
    Set Variable [ $$ImageMetaData ; Value: MBS( "CGImageSource.Properties"; $ImageSource; 0 ) ]
    # get image to show
    Set Variable [ $image ; Value: MBS( "CGImageSource.ImageAtIndex"; $ImageSource; 0; "PNG"; "image.png") ]
    If [ MBS("IsError") = 0 ]
        Set Field [ Untitled::image ; $image ]
    End If
    Set Variable [ $r ; Value: MBS( "CGImageSource.Release"; $ImageSource ) ]
End If

See also

Blog Entries

This function checks for a license.

Created 18th August 2014, last changed 27th January 2020


CGImageSource.CreateWithData - CGImageSource.CreateWithURL