Add References and Set a License - macOS Swift Console

This tutorial shows how to create a project, add references, and set the license in a Swift macOS Console application using the LEADTOOLS SDK.

Summary This tutorial covers how to set your LEADTOOLS license in a Swift macOS Console application.
Completion Time 20 minutes
Project Download tutorial project (4 KB)
Platform Swift macOS Console Application
IDE Xcode
Runtime License Download LEADTOOLS
Try it in another language

Required Knowledge

Before any functionality from the SDK can be leveraged, a valid runtime license will have to be set.

For instructions on how to obtain a runtime license refer to Obtaining a License.

Create the Project

Launch Xcode and select Create a new Xcode project.

Screenshot of Xcode launch screen.

Select macOS at the top and Command Line Tool under the Application section, then click Next.

Screenshot of the template selection.

In the next section, fill in the following and click Next:


The Organization Identifier and Product Name combine to make the Bundle Identifier, which must be unique.

Screenshot of options screen.

Select the location to save the new project to, then click Create.

Screenshot of project save location.

Add the LEADTOOLS Framework Packages

To leverage the LEADTOOLS SDK in a Swift macOS Console project, references to the LEADTOOLS Framework files will be needed.

Framework files can be added by one of the following two methods:

The LEADTOOLS Frameworks can be found here: <INSTALL_DIR>/LEADTOOLS22/Bin/Xcode/Frameworks/macOS

Once a framework file is added, a new folder called Frameworks will be added to the Project Navigator, containing the added framework files.

Screenshot of the Frameworks and Libraries section.

To allow Xcode to utilize these Framework files, a few more steps are required:

If done correctly, the entry should look something like this:

Next, find the entry called Objective-C Bridging Header, under the Swift Compiler - General section. Also, double-click to the right of it and type in the following and hit entry:

Right-click on the blue file in the Project Manager and select New File.... In the new window select Header File from the macOS and Source sections, then click Next. At the top, change the Save As: name to Leadtools-Bridging-Header.h, which is the same name as the one provided in the Objective-C Bridging Header entry above and must match. Then click the check box under the Targets section, as shown in the screenshot below, and click Create.

Screenshot showing how to add the Header File.

The new .h file will be displayed upon creation. Between the #define and #endif section, list the framework .h files containing the API needed for the project.

For the purposes of this tutorial, only the main leadtools.h file is needed, so list it as follows:

#import <Leadtools/Leadtools.h> 


All framework imports will follow the same structure, for example: leadtools.codecs would be #import <Leadtools.Codecs/Leadtools.Codecs.h>.

Screenshot of the imports.

Once finished click Project -> Build, or Command B, to build the project. If done correctly, everything should build without error. If you have any errors double-check the paths and file names provided in the prior sections.

Add the Set License Code

With the project created and the frameworks installed, coding can begin.

Open the main.swift file. Delete the print("Hello, World!") line, and in its place add SetLicense().

Create a new func named SetLicense() and add the code below to properly set your LEADTOOLS license.

func SetLicense() { 
	let license = "/path/to/LEADTOOLS22/Support/Common/License/License.lic" 
	let keyFile = String("\(license).key") 
	do { 
		let key = try String(contentsOfFile: keyFile) 
		try LTRasterSupport.setLicense(file: license, developerKey: key) 
	} catch { 
		print("Unable to read contents of .key file.") 
	if LTRasterSupport.kernelExpired { 
		print("License file invalid or expired.") 
	} else { 
		print("License file set successfully!") 

Run the Project

Clean the project to clear any errors by selecting Product -> Clean Build Folder or Shift + Command + K.

Run the project by selecting Product -> Run or Command + R.

If the steps were followed correctly, the application runs and displays a message in the Output window to indicate success: License file set successfully!.

Displayed output message.


This tutorial showed how to create a new Swift macOS Console project, add LEADTOOLS Frameworks and Header files, and set the license.

This is the basis for all Swift macOS Console applications leveraging the LEADTOOLS SDK. All functionality in the SDK is unlocked via setting a license. Hence, the setLicense() function must be called before calling any other LEADTOOLS SDK functions.

Once the SDK is purchased, the evaluation license can be replaced with a valid runtime license to disable the Nag Message.

See Also

Help Version 22.0.2024.3.20
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.

Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.