A Fast and Complete Swift Drawing Library

Related tags

Image FastDraw
Overview

FastDraw

A Fast and Complete Swift Drawing Library

Description

FastDraw is a high performance and highly extensible Drawing Library that supports Apple Pencil. It supports pencil, highlighter, eraser, and lasso. It is the drawing library used in the collaborative drawing app CoCreate. It has been optimized for Apple Pencil, which means that the stroke you draw with this library detects force performed on the drawing. You can directly get access to the SQLite file created by the library. Moreover, it also provides interface to get updates on operation happens on the board, so it is possible to send the operation in the format of protobuff to other users. There is also interface to draw on the board programatically, which means you can even listen to a websocket, receive a drawing, erasing, or even lasso operation from others, and perform that on the board. FastDraw gives developer the full control over drawing.

Getting Started

Try out the FastDrawDemo

Installing

pod 'FastDraw', :git => 'https://github.com/collinzrj/FastDraw.git', :commit => "33ed685f73b8adae8ab1ca26e5f028f8ef1cd406"

Help

Create an issue if you meet any problems

Authors

Collin Zhang

License

This project is licensed under the [MIT] License - see the LICENSE.md file for details

You might also like...
A high-performance image library for downloading, caching, and processing images in Swift.
A high-performance image library for downloading, caching, and processing images in Swift.

Features Asynchronous image downloader with priority queuing Advanced memory and database caching using YapDatabase (SQLite) Guarantee of only one ima

AYImageKit is a Swift Library for Async Image Downloading, Show Name's Initials and Can View image in Separate Screen.
AYImageKit is a Swift Library for Async Image Downloading, Show Name's Initials and Can View image in Separate Screen.

AYImageKit AYImageKit is a Swift Library for Async Image Downloading. Features Async Image Downloading. Can Show Text Initials. Can have Custom Styles

Kanvas is an open-source iOS library for adding effects, drawings, text, stickers, and making GIFs from existing media or the camera.
Kanvas is an open-source iOS library for adding effects, drawings, text, stickers, and making GIFs from existing media or the camera.

Kanvas Kanvas is an open-source iOS library for adding effects, drawings, text, stickers, and making GIFs from existing media or the camera.

Slide image viewer library similar to Twitter and LINE.
Slide image viewer library similar to Twitter and LINE.

Overview You can use it simply by passing the necessary information! Serrata is a UI library that allows you to intuitively view images. Features King

Style Art library process images using COREML with a set of pre trained machine learning models and convert them to Art style.
Style Art library process images using COREML with a set of pre trained machine learning models and convert them to Art style.

StyleArt Style Art is a library that process images using COREML with a set of pre trained machine learning models and convert them to Art style. Prev

A very useful and unique iOS library to open image picker in just few lines of code.
A very useful and unique iOS library to open image picker in just few lines of code.

ImagePickerEasy A very simple solution to implement UIImagePickerController() in your application. Requirements Swift 4.2 and above Installation Image

A crop, compression, resize and trimming library for videos, based on AVKit.

VideoKit VideoKit is a high level layer on top of AVKit How it works // With this config, the video will get resized to 1920x1080p, the maximal length

A Swift client library for generating URLs with imgix

imgix-swift is a client library for generating image URLs with imgix. Written in Swift, but can be used with Objective-C codebases as well. Installati

Swift Image Slider library for iOS

Banana - ImageSlider for Swift Image slider with very simple interface. At a Glance @IBOutlet weak var imageScrollView: UIScrollView! // Here imageArr

Comments
  • lag when redrawing >300 strokes.

    lag when redrawing >300 strokes.

    Hi, first and foremost I love your project.

    I faced an issue where the drawboard becomes laggy when it has to render more than 300 strokes. At 1900 strokes, The drawboard is basically lagging one stroke behind, stroke data such as stroke points and width are not fully captured as well.

    I found the culprit to be self.setNeedsDisplay(). It will redraw the whole canvas after each stroke, which after 1900 strokes, it would take 1 seconds to complete the repaint, which is unusable for handwriting.

    Few ideas on top of my mind:

    • Limit the redraw scope to the area of the new stroke.
    • Draw to CALayers
    • Caching?

    Thanks!

    opened by 8gb 6
Releases(v0.1.0-alpha)
  • v0.1.0-alpha(Oct 25, 2021)

    FastDraw is a high performance and highly extensible Drawing Library that supports Apple Pencil. It supports pencil, highlighter, eraser, and lasso.

    Source code(tar.gz)
    Source code(zip)
Owner
Collin Zhang
NFLS | NYU STERN | IOS Developer
Collin Zhang
A simple, declarative, functional drawing framework, in Swift!

DePict - A simple, declarative, functional drawing framework. To produce a drawing, call the Draw function (just type Draw and let autocomplete do the

David Cairns 35 Sep 16, 2021
A complete Mac App: drag an image file to the top section and the bottom section will show you the text of any QRCodes in the image.

QRDecode A complete Mac App: drag an image file to the top section and the bottom section will show you the text of any QRCodes in the image. QRDecode

David Phillip Oster 2 Oct 28, 2022
🍁🥓 Lightweight and fast Swift library for image downloading, caching and transformations

MapleBacon Introduction MapleBacon is a lightweight and fast Swift library for downloading and caching images. Example The folder Example contains a s

Jan Gorman 335 Nov 1, 2022
Fast and simple OCR library written in Swift

⛔️ This Project is deprecated and no longer gets maintained! Please use Apple's Vision framework instead of SwiftOCR. It is very fast, accurate and mu

Nicolas Camenisch 4.5k Dec 29, 2022
Fast and simple OCR library written in Swift

⛔️ This Project is deprecated and no longer gets maintained! Please use Apple's Vision framework instead of SwiftOCR. It is very fast, accurate and mu

Nicolas Camenisch 4.5k Dec 29, 2022
A lightweight and fast image loader for iOS written in Swift.

ImageLoader ImageLoader is an instrument for asynchronous image loading written in Swift. It is a lightweight and fast image loader for iOS. Features

Hirohisa Kawasaki 293 Nov 24, 2022
1D, 2D, and 3D variations of Fast Fourier Transforms for a Metal S4TF backend

MetalFFT MetalFFT is an experiment in adding GPU acceleration for 1D, 2D, and 3D variations of Fast Fourier Transforms. This framework's original purp

Philip Turner 21 Oct 11, 2022
1D, 2D, and 3D variations of Fast Fourier Transforms for a Metal S4TF backend

MetalFFT MetalFFT is an experiment in adding GPU acceleration for 1D, 2D, and 3D variations of Fast Fourier Transforms. This framework's original purp

Philip Turner 21 Oct 11, 2022
A VisionCamera Frame Processor plugin for fast buffer resizing

vision-camera-resize-plugin A VisionCamera Frame Processor Plugin for fast buffer resizing. By resizing buffers to a smaller resolution, you can achie

Marc Rousavy 16 Aug 10, 2022
Kingfisher is a powerful, pure-Swift library for downloading and caching images from the web

Kingfisher is a powerful, pure-Swift library for downloading and caching images from the web. It provides you a chance to use a pure-Swift way to work

Wei Wang 20.9k Dec 30, 2022