Skip to content

jangviktor-web/PaddleOCR4Android

Repository files navigation

PaddleOCR4Android

基于 PaddleOCR 的 Android 离线 OCR 文字识别应用
无需联网 · PP-OCRv5 引擎 · 中英日韩繁体 · 内置相机 · 智能分词

Latest Release License Stars Android 7.0+

Download APK Source Code

PaddleOCR4Android

v2.7.2.2 Features


Features

  • 完全离线:所有识别在本地完成,无需网络,保护隐私。
  • PP-OCRv5 引擎:最新一代 OCR 模型,单模型覆盖中/英/日/繁体。
  • 内置相机:CameraX 相机,双指缩放、点击对焦、长按锁定曝光、闪光灯切换、构图网格线。
  • 智能交互:框选 / 逐行 / 分词 / 裁剪 四种模式,满足不同选取需求。
  • 中文分词:集成结巴分词引擎,按语义分词保持阅读顺序。
  • 历史记录:自动保存识别历史,支持查看、删除、清空。
  • 多语言:中/英/日/繁体(PP-OCRv5)、韩语(PP-OCRv3)。
  • 设置中心:拍照分辨率、相册图片尺寸、缓存管理。

Download

版本 下载 说明
v2.7.2.2 (最新) 📥 Releases 分辨率同步 + 复制换行修复
v2.7.2.0 📥 Releases 对焦锁定 + 闪光灯 + 网格线
v2.7.1.6 📥 Releases CameraX 内置相机 + 双指缩放
v2.7.0 📥 Releases 分词拖拽选词 + 自滚动

最低要求:Android 7.0 (API 24) · APK 约 81MB

Tech Stack

Build from Source

Requirements

Tool Version Note
JDK 17+ Android Studio JBR recommended
Android SDK API 35 compileSdk 35
Build Tools 35.0.1
NDK r21e ⚠️ Required — NDK 25+ rejects PaddleLite symbols
CMake 3.22.1 Native C++ compilation

Quick Start

git clone https://github.com/jangviktor-web/PaddleOCR4Android.git
cd PaddleOCR4Android
./gradlew :app:assembleRelease
# APK: app/build/outputs/apk/release/app-release.apk

Setup Guide

JDK Installation

Windows: Use Android Studio JBR, or install from Adoptium macOS: brew install openjdk@17 Linux: sudo apt install openjdk-17-jdk

Android SDK & NDK

Via Android Studio → SDK Manager, install:

  • SDK Platforms → Android 15 (API 35)
  • SDK Tools → Build-Tools 35.0.1
  • SDK Tools → NDK (Side by side) → 21.4.7075529
  • SDK Tools → CMake → 3.22.1

Or via command line:

sdkmanager "platforms;android-35" "build-tools;35.0.1" "ndk;21.4.7075529" "cmake;3.22.1"
FAQ

Q: found local symbol in global part of symbol table A: Wrong NDK version. Must use NDK r21e. Set ndkVersion '21.4.7075529' in PaddleOCR4Android/build.gradle.

Q: Gradle dependency download timeout A: Configure proxy in ~/.gradle/gradle.properties:

systemProp.http.proxyHost=your_proxy_host
systemProp.http.proxyPort=your_proxy_port
systemProp.https.proxyHost=your_proxy_host
systemProp.https.proxyPort=your_proxy_port

Q: Failed to find Build Tools revision 34.0.0 A: Check buildToolsVersion in PaddleOCR4Android/build.gradle matches installed version.

Project Structure

app/
  └── src/main/java/
      ├── MainActivity.kt          # OCR 主界面与识别逻辑
      ├── CameraActivity.kt        # CameraX 相机(对焦/缩放/闪光灯)
      ├── SettingsActivity.kt      # 设置页(分辨率/缓存)
      ├── FocusView.kt             # 对焦框 + 曝光调节自定义 View
      ├── GridOverlayView.kt       # 构图网格线自定义 View
      ├── OcrOverlayView.kt        # 图片触摸交互层
      └── FlowLayout.kt            # 分词流式布局
PaddleOCR4Android/                   # OCR SDK 模块(C++ + JNI)

Changelog

v2.7.2.2 — 修复分辨率同步 + 复制换行
  • 修复相机分辨率切换不同步到设置页(未持久化 SharedPreferences)
  • 修复 OCR 复制文本无换行(改用 box Y 坐标分组重建行文本)
v2.7.2.0 — 对焦锁定 + 闪光灯 + 网格线
  • 点击对焦 + 长按锁定对焦曝光 + 曝光补偿滑块
  • 闪光灯模式切换(自动/开启/关闭)
  • 构图三等分网格线
  • 双指缩放 + 双击切换 1x/2x
  • 文字场景自动曝光优化
  • 新增 FocusView / GridOverlayView 自定义视图
v2.7.1.6 — CameraX 内置相机
  • 集成 CameraX 替换系统相机,支持预览/拍照/分辨率选择
  • 双指捏合变焦(1x~最大倍率)
  • 区域裁剪功能
  • 设置页:拍照分辨率 / 相册图片尺寸 / 清除缓存
v2.7.0 — 分词交互升级
  • 分词拖拽连续选词 + 自滚动
  • 流式词块布局
  • 修复长文本分词乱序
v2.6.x — 交互重塑
  • 框选拖拽选区 + 流式分词布局
  • 修复复制文本换行问题
v2.3.0 — 引擎升级
  • OCR 引擎升级至 PP-OCRv5
  • APK 体积从 102MB 降至 61MB

Credits

License

MIT License

About

Offline OCR Android app — 离线 OCR 文字识别 Android 应用 — 基于 PaddleOCR,支持 7 种语言,结巴分词,框选/逐行/分词交互模式|PaddleOCR PP-OCRv5, 7 languages, Chinese word segmentation, box/line/token interaction modes |

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors