Skip to content

A high-performance image framework, including a series of capabilities such as image views, image downloader, memory caches, disk caches, image decoders and image processors.

License

Notifications You must be signed in to change notification settings

Tencent/LKImageKit

Repository files navigation

LKImageKit

简介

LKImageKit是一个高性能的图片框架,包括了图片控件,图片下载、内存缓存、磁盘缓存、图片解码、图片处理等一系列能力。合理的架构和线程模型,并特别针对不同场景进行优化,能充分发挥硬件的性能。

同时,该框架具有高度的扩展性。在此框架下,开发者可以自定义图片框架中的任何一个部分,比如:自定义图片显示逻辑、自定义缓存、自定义下载组件、自定义解码器、自定义图片处理算法等等。

introduction

LKImageKit is a high-performance image framework, including a series of capabilities such as image views, image downloader, memory caches, disk caches, image decoders, image processors. Reasonable architecture and threading model, and especially for different scenarios to optimize, give full play to the hardware performance

The framework has a high degree of scalability. In this framework, developers can customize any part of the picture frame, such as: custom picture display logic, custom cache, custom downloader, custom decoders, Custom image processing algorithms and more.

Video

github:https://github.com/kelingjie1/MyResources/blob/master/FastImageLoad.MOV

youtube:https://youtu.be/xz503GV5PpE

主要特性:

  • 支持取消

  • 支持请求合并

  • 支持渐进式加载

  • 支持优先级

  • 支持先加载小图再加载大图

  • 支持预加载、预解码

  • 线程安全

  • 调度、解码、加载、处理使用独立线程、且有并发控制

  • 高度模块化,可由开发者自定义各部分模块

Main features:

  • Support canceled

  • Support for the request of the merger

  • Support for progressive loading

  • Support priority

  • Support the first load the thumbnail and then load the big picture

  • Support for preloading, pre-decoding

  • Thread safety

  • Scheduling, decoding, loading, dealing with the use of independent threads, and concurrency control

  • A high degree of modularity, developers can customize each part of the module

模块:

加载模块

  • 网络文件加载(带文件缓存)

  • 本地文件加载

  • 相册加载

  • Bundle加载

解码模块

  • ImageIO

系统内置解码模块,支持PNG、JPG、GIF,支持渐进式解码

缓存模块

  • LRU、FIFO双队列缓存

  • MapTable自动缓存

Module:

Loader:

  • Network file loading (with file cache)

  • Local file loading

  • Album file loading

  • Bundle file loading

Decoder:

  • ImageIO

System built-in decoding module, support for PNG, JPG, GIF, support for progressive decoding

Cache:

  • LRU, FIFO dual queue cache

  • MapTable automatically cache