Skip to content

A wrapper for libjxl (JPEG-XL) with Xcode project. Support Carthage && CocoaPods && SwiftPM.

Notifications You must be signed in to change notification settings

SDWebImage/libjxl-Xcode

Repository files navigation

libjxl + Xcode

A wrapper for libjxl + Xcode project.

This enables Carthage support.

This also contains the Swift Package Manager support.

Carthage compatible SwiftPM compatible

Platforms

  • iOS 9+
  • macOS 10.11+
  • tvOS 9.0+
  • watchOS 2.0+
  • visionOS 1.0+

Notes

  1. v0.10.0 will compile failed on watchOS simulator because of missing C++ thread_local(See: libjxl/libjxl#3345). Build watchOS armv7k/arm64_32 and test on device instead.

Installation

CocoaPods

libjxl is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'libjxl'

Carthage

libjxl is (via this repo) available through Carthage.

github "SDWebImage/libjxl-Xcode"

SwiftPM

Libjxl is available through Swift Package Manager.

let package = Package(
    dependencies: [
        .package(url: "https://github.com/SDWebImage/libjxl-Xcode", from: "0.10.0")
    ],
    // ...
)

Usage

Use libjxl as you would normally, this is just a repo that adds an Xcode proj.

For Swift Package Manager user, it's recommended to use the modular import instead of C headers.

  • Objective-C
@import libjxl;
// or if you don't use module
#import <jxl/decode.h>
#import <jxl/encode.h>
  • Swift
import libjxl

License

libjxl is available under the BSD 3-Clause license. See the LICENSE file for more info.