From ebc761d7ed4f963cc1041d9db9d843915af94908 Mon Sep 17 00:00:00 2001 From: wupingyuan Date: Thu, 27 Apr 2023 09:20:15 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E4=B8=89=E6=96=B9=E5=BA=93zb?= =?UTF-8?q?ar=E7=9A=84=E9=80=82=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: wupingyuan --- zbar/BUILD.gn | 94 ++++++++ zbar/CHANGELOG.md | 3 + zbar/CMakeLists.txt | 55 +++++ zbar/README.OpenSource | 11 + zbar/README_zh.md | 19 ++ zbar/adapted/config.h | 227 ++++++++++++++++++ .../third_party_libjpeg/CMakeLists.txt | 110 +++++++++ .../adapted/third_party_libpng/CMakeLists.txt | 28 +++ zbar/bundle.json | 35 +++ zbar/docs/hap_integrate.md | 55 +++++ zbar/docs/pic/hap.jpg | Bin 0 -> 173424 bytes zbar/docs/pic/result.png | Bin 0 -> 14261 bytes zbar/docs/rom_integrate.md | 143 +++++++++++ 13 files changed, 780 insertions(+) create mode 100644 zbar/BUILD.gn create mode 100644 zbar/CHANGELOG.md create mode 100644 zbar/CMakeLists.txt create mode 100644 zbar/README.OpenSource create mode 100644 zbar/README_zh.md create mode 100644 zbar/adapted/config.h create mode 100644 zbar/adapted/third_party_libjpeg/CMakeLists.txt create mode 100644 zbar/adapted/third_party_libpng/CMakeLists.txt create mode 100644 zbar/bundle.json create mode 100644 zbar/docs/hap_integrate.md create mode 100644 zbar/docs/pic/hap.jpg create mode 100644 zbar/docs/pic/result.png create mode 100644 zbar/docs/rom_integrate.md diff --git a/zbar/BUILD.gn b/zbar/BUILD.gn new file mode 100644 index 00000000..0767cdf6 --- /dev/null +++ b/zbar/BUILD.gn @@ -0,0 +1,94 @@ +import("//build/ohos.gni") + +declare_args() { + enable_zbar_test = false +} + +config("config") { + cflags = [ + "-O3", + "-Wall", + "-Wno-extra-tokens", + "-Wno-incompatible-pointer-types", + "-Wno-parentheses", + "-Wno-unused-variable", + "-Wno-absolute-value", + "-Wno-unused-function", + "-Wno-unused-const-variable", + "-Wno-unused-label", + "-Wno-shift-negative-value", + "-Wno-tautological-pointer-compare", + "-Wno-duplicate-decl-specifier", + ] +} + +ohos_source_set("zbar_source") { + sources = [ + "//third_party/zbar/zbar/config.c", + "//third_party/zbar/zbar/convert.c", + "//third_party/zbar/zbar/decoder.c", + "//third_party/zbar/zbar/decoder/code128.c", + "//third_party/zbar/zbar/decoder/code39.c", + "//third_party/zbar/zbar/decoder/ean.c", + "//third_party/zbar/zbar/decoder/i25.c", + "//third_party/zbar/zbar/decoder/pdf417.c", + "//third_party/zbar/zbar/decoder/qr_finder.c", + "//third_party/zbar/zbar/error.c", + "//third_party/zbar/zbar/image.c", + "//third_party/zbar/zbar/img_scanner.c", + "//third_party/zbar/zbar/jpeg.c", + "//third_party/zbar/zbar/qrcode/bch15_5.c", + "//third_party/zbar/zbar/qrcode/binarize.c", + "//third_party/zbar/zbar/qrcode/isaac.c", + "//third_party/zbar/zbar/qrcode/qrdec.c", + "//third_party/zbar/zbar/qrcode/qrdectxt.c", + "//third_party/zbar/zbar/qrcode/rs.c", + "//third_party/zbar/zbar/qrcode/util.c", + "//third_party/zbar/zbar/refcnt.c", + "//third_party/zbar/zbar/scanner.c", + "//third_party/zbar/zbar/symbol.c", + "//third_party/zbar/zbar/video.c", + "//third_party/zbar/zbar/video/null.c", + ] + include_dirs = [ + "//third_party/zbar/include", + "//third_party/libjpeg", + "//third_party/libpng", + "//third_party/zbar/zbar/", + ] + configs = [ ":config" ] +} + +ohos_executable("zbar_test") { + sources = [ "//third_party/zbar/examples/scan_image.c" ] + include_dirs = [ + "//third_party/zbar/include", + "//third_party/libjpeg", + "//third_party/libpng", + "//third_party/zbar/zbar/", + ] + + configs = [ ":config" ] + + deps = [ "//third_party/zbar:libzbar" ] + subsystem_name = "thirdparty" + part_name = "zbar" + output_name = "zbar_test" +} + +ohos_shared_library("libzbar") { + deps = [ + ":zbar_source", + "//third_party/libjpeg:libjpeg_static", + "//third_party/libpng:libpng_static", + ] + part_name = "zbar" + output_name = "zbar" +} + +group("zbar_targets") { + deps = [ ":libzbar" ] + if (enable_zbar_test) { + deps += [ ":zbar_test" ] + } +} diff --git a/zbar/CHANGELOG.md b/zbar/CHANGELOG.md new file mode 100644 index 00000000..4963dc75 --- /dev/null +++ b/zbar/CHANGELOG.md @@ -0,0 +1,3 @@ +# 1.0.0 + +添加BUILD.gn和cmake,适配在ohos上的编译 diff --git a/zbar/CMakeLists.txt b/zbar/CMakeLists.txt new file mode 100644 index 00000000..6299ab8c --- /dev/null +++ b/zbar/CMakeLists.txt @@ -0,0 +1,55 @@ +# the minimum version of CMake. +cmake_minimum_required(VERSION 3.4.1) +project(ZBar) + +include_directories(${CMAKE_CURRENT_SOURCE_DIR} + ${CMAKE_CURRENT_SOURCE_DIR}/include + ${CMAKE_CURRENT_SOURCE_DIR}/zbar + ${CMAKE_CURRENT_SOURCE_DIR}/third_party_libjpeg + ${CMAKE_CURRENT_SOURCE_DIR}/third_party_libpng + ) + +add_subdirectory(third_party_libjpeg) +add_subdirectory(third_party_libpng) + +add_library(ZBar SHARED + zbar/jpeg.c + zbar/img_scanner.c + zbar/decoder.c + zbar/image.c + zbar/symbol.c + zbar/convert.c + zbar/config.c + zbar/scanner.c + zbar/error.c + zbar/refcnt.c + zbar/video.c + zbar/video/null.c + zbar/decoder/code128.c + zbar/decoder/code39.c + zbar/decoder/ean.c + zbar/decoder/i25.c + zbar/decoder/qr_finder.c + zbar/decoder/pdf417.c + zbar/qrcode/bch15_5.c + zbar/qrcode/binarize.c + zbar/qrcode/isaac.c + zbar/qrcode/qrdec.c + zbar/qrcode/qrdectxt.c + zbar/qrcode/rs.c + zbar/qrcode/util.c + ) + +add_library(libjpegStatic STATIC IMPORTED) +set_target_properties(libjpegStatic PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/third_party_libjpeg/libs/${OHOS_ARCH}/libjpegStatic.a) + +add_library(libpngStatic STATIC IMPORTED) +set_target_properties(libpngStatic PROPERTIES IMPORTED_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/third_party_libpng/libs/${OHOS_ARCH}/libpngStatic.a) + + +target_link_libraries(ZBar PUBLIC libjpegStatic) +target_link_libraries(ZBar PUBLIC libpngStatic) +target_link_libraries(ZBar PUBLIC libz.so) + +add_executable(scan_image examples/scan_image.c) +target_link_libraries(scan_image PUBLIC ZBar) \ No newline at end of file diff --git a/zbar/README.OpenSource b/zbar/README.OpenSource new file mode 100644 index 00000000..9105ee6e --- /dev/null +++ b/zbar/README.OpenSource @@ -0,0 +1,11 @@ +[ + { + "Name": "zbar", + "License": "LGPL", + "License File": "COPYING", + "Version Number": "master", + "Owner" : "wupingyuan@huawei.com", + "Upstream URL": "https://github.com/herbyme/zbar", + "Description": "libzbar, a QR Code scanner engine for QR+Emoji." + } +] diff --git a/zbar/README_zh.md b/zbar/README_zh.md new file mode 100644 index 00000000..a7a4c1cc --- /dev/null +++ b/zbar/README_zh.md @@ -0,0 +1,19 @@ +# zbar 三方库说明 + +## 功能简介 + +zbar是一个条形码和二维码解析的库。 + +## 使用约束 + +- Rom版本:OpenHarmony3.2 beta2 +- IDE版本:DevEco Studio 3.1 Beta1 +- API版本:9 +- 三方库版本:0.10 +- 当前适配的功能:条形码和二维码解析 +- License:[LGPL](https://github.com/herbyme/zbar/blob/master/COPYING) + +## 集成方式 + +- [系统Rom包集成](./docs/rom_integrate.md) ++ [应用hap包集成](docs/hap_integrate.md) diff --git a/zbar/adapted/config.h b/zbar/adapted/config.h new file mode 100644 index 00000000..e62bd003 --- /dev/null +++ b/zbar/adapted/config.h @@ -0,0 +1,227 @@ +/* include/config.h.in. Generated from configure.ac by autoheader. */ + +/* whether to build support for Code 128 symbology */ +#define ENABLE_CODE128 1 + +/* whether to build support for Code 39 symbology */ +#define ENABLE_CODE39 1 + +/* whether to build support for EAN symbologies */ +#define ENABLE_EAN 1 + +/* whether to build support for Interleaved 2 of 5 symbology */ +#define ENABLE_I25 1 + +/* whether to build support for PDF417 symbology */ +#define ENABLE_PDF417 1 + +/* whether to build support for QR Code */ +#define ENABLE_QRCODE 1 + +/* Define to 1 if you have the `atexit' function. */ +#undef HAVE_ATEXIT + +/* Define to 1 if you have the header file. */ +#undef HAVE_DLFCN_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_FCNTL_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_FEATURES_H + +/* Define to 1 if you have the `getpagesize' function. */ +#undef HAVE_GETPAGESIZE + +/* Define if you have the iconv() function and it works. */ +#undef HAVE_ICONV + +/* Define to 1 if you have the header file. */ +#define HAVE_INTTYPES_H 1 + +/* Define to 1 if you have the header file. */ +#undef HAVE_JPEGLIB_H + +/* Define to 1 if you have the `jpeg' library (-ljpeg). */ +//#undef HAVE_LIBJPEG +#define HAVE_LIBJPEG 1 + + +/* Define to 1 if you have the `pthread' library (-lpthread). */ +#undef HAVE_LIBPTHREAD + +/* Define to 1 if you have the header file. */ +#undef HAVE_LINUX_VIDEODEV2_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_LINUX_VIDEODEV_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_MEMORY_H + +/* Define to 1 if you have the `memset' function. */ +#define HAVE_MEMSET 1 + +/* Define to 1 if you have a working `mmap' system call. */ +#undef HAVE_MMAP + +/* Define to 1 if you have the header file. */ +#undef HAVE_POLL_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_PTHREAD_H + +/* Define to 1 if you have the `setenv' function. */ +#undef HAVE_SETENV + +/* Define to 1 if you have the header file. */ +#define HAVE_STDINT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STDLIB_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRINGS_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_STRING_H 1 + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_IOCTL_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_IPC_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_MMAN_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_SYS_SHM_H + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_STAT_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TIMES_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TIME_H 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_SYS_TYPES_H 1 + +/* Define to 1 if the system has the type `uintptr_t'. */ +#define HAVE_UINTPTR_T 1 + +/* Define to 1 if you have the header file. */ +#define HAVE_UNISTD_H 1 + +/* Define to 1 if you have the header file. */ +#undef HAVE_VFW_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_X11_EXTENSIONS_XSHM_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_X11_EXTENSIONS_XVLIB_H + +/* Define as const if the declaration of iconv() needs const. */ +#undef ICONV_CONST + +/* Library major version */ +#define LIB_VERSION_MAJOR 0 + +/* Library minor version */ +#define LIB_VERSION_MINOR 2 + +/* Library revision */ +#define LIB_VERSION_REVISION 0 + +/* Define to the sub-directory in which libtool stores uninstalled libraries. + */ +#undef LT_OBJDIR + +/* Define to 1 if assertions should be disabled. */ +//#undef NDEBUG + +/* Define to 1 if your C compiler doesn't accept -c and -o together. */ +#undef NO_MINUS_C_MINUS_O + +/* Name of package */ +#undef PACKAGE "zbar" + +/* Define to the address where bug reports for this package should be sent. */ +#undef PACKAGE_BUGREPORT "spadix@users.sourceforge.net" + +/* Define to the full name of this package. */ +#undef PACKAGE_NAME "zbar" + +/* Define to the full name and version of this package. */ +#undef PACKAGE_STRING "zbar 0.10" + +/* Define to the one symbol short name of this package. */ +#undef PACKAGE_TARNAME "zbar" + +/* Define to the version of this package. */ +#undef PACKAGE_VERSION "0.10" + +/* Define to 1 if you have the ANSI C header files. */ +#define STDC_HEADERS 1 + +/* Version number of package */ +#undef VERSION "0.10" + +/* Define to 1 if the X Window System is missing or not being used. */ +#define X_DISPLAY_MISSING 1 + +/* Program major version (before the '.') as a number */ +#define ZBAR_VERSION_MAJOR 0 + +/* Program minor version (after '.') as a number */ +#define ZBAR_VERSION_MINOR 10 + +/* Define for Solaris 2.5.1 so the uint32_t typedef from , + , or is not used. If the typedef were allowed, the + #define below would cause a syntax error. */ +#undef _UINT32_T + +/* Define for Solaris 2.5.1 so the uint8_t typedef from , + , or is not used. If the typedef were allowed, the + #define below would cause a syntax error. */ +#undef _UINT8_T + +/* Minimum Windows API version */ +#undef _WIN32_WINNT + +/* used only for pthread debug attributes */ +#undef __USE_UNIX98 + +/* Define to empty if `const' does not conform to ANSI C. */ +#undef const + +/* Define to `__inline__' or `__inline' if that's what the C compiler + calls it, or to nothing if 'inline' is not supported under any name. */ +#ifndef __cplusplus +#undef inline +#endif + +/* Define to the type of a signed integer type of width exactly 32 bits if + such a type exists and the standard includes do not define it. */ +#undef int32_t + +/* Define to the type of an unsigned integer type of width exactly 32 bits if + such a type exists and the standard includes do not define it. */ +#undef uint32_t + +/* Define to the type of an unsigned integer type of width exactly 8 bits if + such a type exists and the standard includes do not define it. */ +#undef uint8_t + +/* Define to the type of an unsigned integer type wide enough to hold a + pointer, if such a type exists, and if the system does not define it. */ +#undef uintptr_t + +#ifndef X_DISPLAY_MISSING +# define HAVE_X +#endif + diff --git a/zbar/adapted/third_party_libjpeg/CMakeLists.txt b/zbar/adapted/third_party_libjpeg/CMakeLists.txt new file mode 100644 index 00000000..f11ffa95 --- /dev/null +++ b/zbar/adapted/third_party_libjpeg/CMakeLists.txt @@ -0,0 +1,110 @@ +cmake_minimum_required(VERSION 3.16.5) + +project(third_party_libjpeg) + +set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/libs/${OHOS_ARCH}) + +set(LibjpegSrc "${PROJECT_SOURCE_DIR}") + +include_directories(${LibjpegSrc}) + +include(CheckIncludeFile) +include(CheckSymbolExists) +include(CheckCSourceCompiles) + +check_include_file(stddef.h HAVE_STDDEF_H) +check_include_file(stdlib.h HAVE_STDLIB_H) +check_include_file(string.h HAVE_STRING_H) +check_symbol_exists(size_t stddef.h stdlib.h stdio.h HAVE_ANSI_SIZE_T) +check_symbol_exists(setmode io.h USE_SETMODE) +check_c_source_compiles( +" +void f() +{ + char x[ (char)0xff ]; /* x[-1] if signed */ +} +" +CHAR_IS_UNSIGNED) + +check_c_source_compiles( +" +void f() +{ + char x[ ((signed char)0xff) >> 1 ]; /* x[-1] if signed */ +} +" +RIGHT_SHIFT_IS_UNSIGNED) + +if(NOT HAVE_STRING_H) + set(NEED_BSD_STRINGS TRUE) +else() + set(NEED_BSD_STRINGS FALSE) +endif() + +if(NOT HAVE_ANSI_SIZE_T) + set(NEED_SYS_TYPES_H TRUE) +else() + set(NEED_SYS_TYPES_H FALSE) +endif() + +configure_file(${LibjpegSrc}/jconfig.txt ${LibjpegSrc}/jconfig.h) + +add_library(jpegStatic STATIC + ${LibjpegSrc}/cdjpeg.c + ${LibjpegSrc}/jaricom.c + ${LibjpegSrc}/jcapimin.c + ${LibjpegSrc}/jcapistd.c + ${LibjpegSrc}/jcarith.c + ${LibjpegSrc}/jccoefct.c + ${LibjpegSrc}/jccolor.c + ${LibjpegSrc}/jcdctmgr.c + ${LibjpegSrc}/jchuff.c + ${LibjpegSrc}/jcinit.c + ${LibjpegSrc}/jcmainct.c + ${LibjpegSrc}/jcmarker.c + ${LibjpegSrc}/jcmaster.c + ${LibjpegSrc}/jcomapi.c + ${LibjpegSrc}/jcparam.c + ${LibjpegSrc}/jcprepct.c + ${LibjpegSrc}/jcsample.c + ${LibjpegSrc}/jctrans.c + ${LibjpegSrc}/jdapimin.c + ${LibjpegSrc}/jdapistd.c + ${LibjpegSrc}/jdarith.c + ${LibjpegSrc}/jdatadst.c + ${LibjpegSrc}/jdatasrc.c + ${LibjpegSrc}/jdcoefct.c + ${LibjpegSrc}/jdcolor.c + ${LibjpegSrc}/jddctmgr.c + ${LibjpegSrc}/jdhuff.c + ${LibjpegSrc}/jdinput.c + ${LibjpegSrc}/jdmainct.c + ${LibjpegSrc}/jdmarker.c + ${LibjpegSrc}/jdmaster.c + ${LibjpegSrc}/jdmerge.c + ${LibjpegSrc}/jdpostct.c + ${LibjpegSrc}/jdsample.c + ${LibjpegSrc}/jdtrans.c + ${LibjpegSrc}/jerror.c + ${LibjpegSrc}/jfdctflt.c + ${LibjpegSrc}/jfdctfst.c + ${LibjpegSrc}/jfdctint.c + ${LibjpegSrc}/jidctflt.c + ${LibjpegSrc}/jidctfst.c + ${LibjpegSrc}/jidctint.c + ${LibjpegSrc}/jmemansi.c + ${LibjpegSrc}/jmemmgr.c + ${LibjpegSrc}/jquant1.c + ${LibjpegSrc}/jquant2.c + ${LibjpegSrc}/jutils.c + ${LibjpegSrc}/rdbmp.c + ${LibjpegSrc}/rdcolmap.c + ${LibjpegSrc}/rdgif.c + ${LibjpegSrc}/rdppm.c + ${LibjpegSrc}/rdrle.c + ${LibjpegSrc}/rdswitch.c + ${LibjpegSrc}/rdtarga.c + ${LibjpegSrc}/transupp.c + ) + +target_include_directories(jpegStatic PUBLIC ${LibjpegSrc}) diff --git a/zbar/adapted/third_party_libpng/CMakeLists.txt b/zbar/adapted/third_party_libpng/CMakeLists.txt new file mode 100644 index 00000000..18a8afcd --- /dev/null +++ b/zbar/adapted/third_party_libpng/CMakeLists.txt @@ -0,0 +1,28 @@ +cmake_minimum_required(VERSION 3.4.1) +project(third_party_libpng) + +set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/libs/${OHOS_ARCH}) + +include_directories(${CMAKE_CURRENT_SOURCE_DIR}) + +add_library(pngStatic STATIC + arm/arm_init.c + arm/filter_neon_intrinsics.c + arm/palette_neon_intrinsics.c + png.c + pngerror.c + pngget.c + pngmem.c + pngpread.c + pngread.c + pngrio.c + pngrtran.c + pngrutil.c + pngset.c + pngtrans.c + pngwio.c + pngwrite.c + pngwtran.c + pngwutil.c) + + diff --git a/zbar/bundle.json b/zbar/bundle.json new file mode 100644 index 00000000..bd5578ba --- /dev/null +++ b/zbar/bundle.json @@ -0,0 +1,35 @@ +{ + "name": "@ohos/zbar", + "description": "libzbar, a QR Code scanner engine for QR+Emoji", + "version": "0.10", + "license": "LGPL-2.1", + "publishAs": "", + "segment": { + "destPath": "third_party/zbar" + }, + "dirs": {}, + "scripts": {}, + "readmePath": { + "en": "README" + }, + "component": { + "name": "zbar", + "subsystem": "thirdparty", + "syscap": [], + "features": [], + "adapted_system_type": ["standard"], + "rom": "", + "ram": "", + "deps": { + "components": [], + "third_party": [] + }, + "build": { + "sub_component": [ + "//third_party/zbar:zbar_targets" + ], + "inner_kits": [], + "test": [] + } + } +} \ No newline at end of file diff --git a/zbar/docs/hap_integrate.md b/zbar/docs/hap_integrate.md new file mode 100644 index 00000000..af76a267 --- /dev/null +++ b/zbar/docs/hap_integrate.md @@ -0,0 +1,55 @@ +# zbar如何集成到应用hap +## 准备应用工程 +本库是基于DevEco Studio 3.1 Beta1版本,在RK3568开发板上验证的,如果是从未使用过RK3568,可以先查看[润和RK3568开发板标准系统快速上手](https://gitee.com/openharmony-sig/knowledge_demo_temp/tree/master/docs/rk3568_helloworld)。 +### 准备应用开发环境 +开发环境的准备参考:[开发环境准备](https://gitee.com/openharmony-sig/knowledge_demo_temp/blob/master/docs/napi_study/docs/hello_napi.md#%E5%B7%A5%E7%A8%8B%E5%87%86%E5%A4%87) +### 增加构建脚本及配置文件 +- 下载本仓库,并解压 +- 三方库目录结构 + ``` + tpc_c_cplusplus/zbar #三方库zbar的目录结构如下 + ├── adapted #存放三方库适配需要的代码文件 + ├── docs #存放三方库相关文档的文件夹 + ├── CmakeLists.txt #构建脚本,支持hap包集成 + ├── bundle.json #三方库组件定义文件 + ├── README.OpenSource #说明三方库源码的下载地址,版本,license等信息 + ├── README_zh.md + ``` +- 将zbar拷贝至工程xxxx/entry/src/main/cpp/thirdparty目录下 +### 准备三方库源码 +- 三方库下载地址:[zbar](https://github.com/herbyme/zbar) + 解压后修改库文件名为zbar,拷贝至工程xxxx/entry/src/main/cpp/thirdparty/zbar目录下 +- 依赖库下载地址:[third_party_libpng](https://gitee.com/openharmony/third_party_libpng) + 解压后修改库文件名为third_party_libpng,拷贝至工程xxxx/entry/src/main/cpp/thirdparty/zbar/目录下,然后把adapter/third_party_libpng/CMakeLists.txt拷贝到third_party_libpng目录 +- 依赖库下载地址:[third_party_libjpeg](https://gitee.com/openharmony/third_party_libjpeg) + 解压后修改库文件名为third_party_libjpeg,拷贝至工程xxxx/entry/src/main/cpp/thirdparty/zbar/目录下,然后把adapter/third_party_libjpeg/CMakeLists.txt拷贝到third_party_libjpeg目录 +## 应用中使用三方库 +- 将三方库加入工程中,目录结构如下 + ``` + demo/entry/src/main/cpp + ├── thirdparty #三方库存放目录 + │ ├── zbar #三方库zbar + ├── CMakeLists.txt #工程目录的构建脚本 + ├── ..... #工程目录的其他文件 + ``` +- 在工程顶级CMakeLists.txt中引入三方库,增加如下代码 + ``` + add_subdirectory(thirdparty/zbar) #引入子目录下的CMakeLists.txt + target_link_libraries(工程库名 PUBLIC zbar) #工程依赖三方库zbar + target_include_directories(工程库名 PRIVATE thirdparty/zbar/third_party_libjpeg + thirdparty/zbar/third_party_libpng + thirdparty/zbar/include) + ``` +## 编译工程 +编译工程,安装应用可以参考 [应用的安装和运行](https://gitee.com/openharmony-sig/knowledge_demo_temp/blob/master/docs/napi_study/docs/hello_napi.md#%E5%AE%89%E8%A3%85%E8%B0%83%E8%AF%95) + +## 运行效果 +- 在 [zbar](https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/zbar)中,运行效果如下图 +  ![演示](pic/hap.jpg) +## 参考资料 +- [润和RK3568开发板标准系统快速上手](https://gitee.com/openharmony-sig/knowledge_demo_temp/tree/master/docs/rk3568_helloworld) +- [OpenHarmony三方库地址](https://gitee.com/openharmony-tpc) +- [OpenHarmony知识体系](https://gitee.com/openharmony-sig/knowledge) +- [通过DevEco Studio开发一个NAPI工程](https://gitee.com/openharmony-sig/knowledge_demo_temp/blob/master/docs/napi_study/docs/hello_napi.md) + + diff --git a/zbar/docs/pic/hap.jpg b/zbar/docs/pic/hap.jpg new file mode 100644 index 0000000000000000000000000000000000000000..3e84f208091d744400ded1166a7c5e3290fbc226 GIT binary patch literal 173424 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%0DUSt!tos+U| z{+Mn>YIh;Hi(MqAm@5N!n68jb1#uu>4nhT2a^`(+u%f-n^^;c+Ff=>9J_MI;SJoSv zbE9^eX1KX#2l*K3Vi~34>cW_l6El$&I02HFKG%$!fOjWf4`G%0>ujo z6fAu~s0PJ&WcvL`uS^ZzDRt&My%Op!WtNaj*}bR6s+Ot?m@9KsOGELJxihUH_+Nkc z&96peYLb|L_cKMdpXf0}5r+~-i2H|whpaa7Ny&F|f)fF=tlxzO0(fQEL;$a?R8rhs zhD;47(c%wUvtr+Q)`tLpFx&AB#o>G(aH>o^q}N*#>qYs?aNVDQgYP8y%xv~;AHVF} zEVeIObrBUF{(WI!Q0SOV{@DzFHxL`ujE%+K1e(oFps_x@;lHo{?!kXG@Lvu5R|Egm zz<)LHUk&_M1OL^)e>L!54g6OF|JA^MHSk{z{8t12)xdu>@c(!XFy8Lizq|kL%QF{? zKEK+@ICXUL%+r&!V%e}K@ zfupmizh2+?ZnxiHBggv8se_ejldt!Dk2|g+ut)F$Nb`WOG(ZCUiL)e!|Bt3`k7v65 z|9>+Xr75Mh%%R)dipb$Eo3pyZQd1I@V<91@O^!L2%00tGrV+M&z495)UwPp~&V7vp2qg~AhwnNviE z%Pn|Zl+P9$Zdu2b3w2*!%1I6ZFqda}$A2Fctzlx?k1stp|sU zTRIOzhZudnu#2T-4JZXDT|E{SPJMAU@>Tm4d++`$Qt0&rZ&UtO+S&tGu()3-DVWb3 z{{t+V2v_%lb|Ij|di<_ie`0~I=R9)$YJopdo-A^v0HYmvfKHHkMn0n7s zC=rPE_O3`gRO?}#5%e4dU#hK_dmhm~m`wdeD=Y?|4w24rT-OGXK$F#db`u7_Lf760 zNBM!jYZs5a-5TpvS!eZw1QPjF^L&yiN%q{-1yXq$qg_M6hqyHR5JgDoAFPc*&1lR) zuh_TC%zv4NYOuZR%xb|ANT4^i(_}pH zb+EDo^NVTx{ipnZ<+x588qooV!r`rga^>UPoNP*#vNdKLi*9f2-a6l^Ntq89p%=lY zMdZGu(O`p%J<1t-za4XwTx&`k{y4$e*w!QZ1`0%OoJb@&>>en#8Ie*P@>T;{Lz1ZR zvZi<)2Mt7bf>SY80~Q4+zQ(NEV+P4#+tHgUGc?ItH_7yhepzr5R5suLtD$BcV$YXukcrioLo;K#xA@y{&BFjtb6@gqB|J{n25j32 zB?Zt5=SlZ4U9+0yIFtG2I1Ck{3xmaoLq`?k?H&(eh7LGjr>U2%ZIhduj~hPJM@ zyQm-iX8faIJZ5*wuTy^kd+$UoJ_);@cH+1q6u9}4&%=a1k-|nuGNvyLT^T7)>@W*f zt>sv_C4iXRya7J&4=|bVpziI)V8tIGTm9$%hX1514tyRqjl4dw<8a2euyhu%hk;Ub z_l4a_GIs7hDJV3Sw#R6O`Y_ON2zsKu9dHJJ`lIz-6JJXOeabY8+nwl8a3jsB}b>h*g{%6X~A(9*eMOkhg zx1PR@(J|81UWyDD+zed+r!+pa)N#6dW^kS4WskMxa968F=je3FWvi+?8@gw`c$VLS zF+dg`qnX{oCuHFip`=GgU!iRLhRM&~b3|(m<(?(#vqKTr$Oc0Zq_!#)hiidJNAVtEk1I-2O zY|VLA`Z3q}$-3k7kq<YXTZubfZ;5XOC+SO#4axoeDnPSOl;N@ zD%WPd(M9DgoF2VIx;FjiTS*T%hpheD*S068;LzP)%p#E_+jyz5`pV)(jRDMg$zKLA zn{E>&TkA7YsM~@HBq&0^=(QP2Ph7JG-}6p&Uj4T%->_iNH1DV>5FcKsjq)q(@anq8 z8B2VVuPixYP2Nh`0qr&+cm18l}f2c3F)|guZN%O`Kimvh85vX9;M&F|3^6zi|XyANUMQJF5_*@(S;$de6#0 z^XULoHS9X7Y426>P1f_DE#5$P-1esw(i(cYQG^+uV46lGPOfYueqR*5u9#o(K%bmF zZB^fVxbEb@n|RkA=fr9cWr?x0ld~*ze}hFd3#gJqx3(^83vstUUoVc#zs2V(P>UV4 zv%*Z5Fk|KM$iv{?e2}*0ddb=0Ejj7cJ>B?;Iqi8U`4;c%96EV1O~+8 znlmnwc%v`?xkE~Zn6-N+o6I7eJ|FYwuRLRi@q;bS;lxApUl;M^ZYH z_Xl`%*b5|_TpiFA`?mQbc^p+^>Uy{B(9(Dqw&Eb!LLR;XAD7~Skt{y!#8pX#d((U| zeP(Eb{yTp2;-k(9fEP4JYEJwa7fhdY5J+6D`u}%`?Ypnj*&U@1Jr>iAhN5|xSvG}o zKHz?eoa!7d%;*PKDs|kk^muom`qx^J4i3K5CXejST#<~9^bJaOo?jhL ze6tDe+SIk=ah#OqmmOxSGZ;QBVE5E@HG9qEFN+K)+8nt!!OkWI#v}91=*w-7^b+|6 zb<~2vP}=$faK~-|=Q^XnzrgJe5KX`HKNfYhma^m@k0u_H_qxZzu@tc+4zNZuei0h7 z$Ds+)tKA0ir}6Z{LENY?s#L5I3eHfW$=rP9CBN%qb*Cnl=PNjN;`;w7{MB)eSr>7xwp!6byQC9R8F1ts*H` z6#uXi%O$?41mlO}mn1uj7)JYKEJdo@)+i1sIC2M>6>VX|;~)Ui$Ww{C)>8cJ$I-~+ ziFC=H9Ivp$MMoRwZa+wz1|!BSD68?C)D>UDBCeRKGe`sqY#jk4E|(!x2_#-N)7DNP z>OEY@PF!@2XauPu$~4KCp8ljOO1e4>)yruuZ~ zT4!i{BLDbm;%EMYrMqwFqJnt(@2BI_H1XY)mdD_DzUjK+kb7KOsJl-oS|lK)j?$D- z3i8{i@~VxHjtOv*Ib(M>)rTH?2}64}pnjtgyT9&yJLnjqSPPz4#MJK5B~3}=|9`OK z2bg0R0ZskXl28)s+@Ok!B%4Mec@~byNOLvgp+vhC8u%rJJg67njTI$cAC6hk+x+X$ z)SA`TKfp^B@XwqaW;WEPo`5G`JLDRK8cS5N1)zvo>McQ~21@NVE*8>M1{cj(+mlcoQHB-f_@;cQ->9Hx)k_N>@Fr!$utc&G)mki}V6_X>1RvEe1f z`ctUyZY<5n^N=o~jHC5qb@Z9rAcKT#HRh8znE~e5cm4nj{|yZ=_$C(MhIUP4vq!Bu zt?qvQVMh2t!beY}3RB{to|LUtW73Jeu77}she5$BRD3FQ^DKS+6&TSJz*z-XDRf(| zMu^M~*#w^-3fn)yVkTI?fo^m@QbBfa_k^6(`2z?~ZyH&F19^Gb z)jx(VWdwz6r-!b!2e0!Jdox$epVL_fjHWeGhPP%}Bb0#El%1j)ho&Ft3vm ze2-k>ud+fKx}tZ1>E#hSFd^wN`S)wb)_~1W)mJ*n}l<$qBWlLE9xUTW^#}tus zVbMTrifs&1piO)B(OwFEsP!HcjEYhV{1ifxK_P^l1HRu5HP`B~ClO#$rnM0v`5}y# zm1M8b#g|`f()++ymr6)1moUM&&nI6%W@mr#8AQ!txJogQ^7dH>EX*~P!d>zNd(1r2 z5FpTh)p|;q)GLcXQqMkc$$tvw$e96HW90Av;E$G3JR$f!QSi|FM&;hG>-6=C#6@Xw zli=Wu*$KSYH{9TyS8)Sr^$+lQ&z;kPWr@CQSkVq?^5{snbW#ygR!F_gJQ4bk8{FXp zKcIC1kZZ+gYUJ|E(9DzRyD(0bDTKVs4F&@z%i!JT(9`YhDDrU~6a~5P*~mooso%Y; z-UiRo5Vl`Frb)?AI7_`X^!#_=MahxxYIj1bg*3S`-mLUyy>!*%-n;6w>=qwN@Hw~w z<8t0Sjn%Pe^hs_@cyhPN!E;%V zU`TS43>go#iE*zQ62M(g7ZQ9!&YSaO>P(b1UsMfUO{)x=U69aenx?OMv1T2!&+G18 z8gQ#BFMZSZ-XY2DwIImgD#9#k&vn|c*0~bPvn06}hikFhzQ5LqK@7p9sX(`^{KmV6 zc4qLYk0cvZUU!(``1+L?zJE!APr-dHr>wFQQuaCk%JR4mpk|oy)Y}`mfRFy`Sz}y( zMTJ+ee&2sp&56c=CqJ2tIuw^Qx42zfisDqGLYrG%WPVkX?T2g=oE##0y1I>QFFhUk zEE_Y>;I6>UvePCe6+zl1JE`~g@O}?|x%rOEO|cm;9yc7y(?~*B{w_zQIEM{sL(S3v z)aH<{kNGqLB3l=-alN*Bg2tmyR0(`Fh9WOr7im9dS8*;?Nv>!AAfcIiLrk;mkx4(` zJ)dnf%NY}ADgN8PB&Rk3$Q#-e04C?@s7X`a8D@kvvmVD|G!9x;W)X<~8h}kl(IIP# z9>{*IdQ5d|j|cI?5@d$-sNy82Z>BGhGf@%MGSck!`knW5aiiYLC*Zji<;8INY}oDS zi6fAW+1VY#Jy!*&Fs7eXv~NVK#%)w8)%GaS2R;>p+`-<@xK4)I#_q~eK}HE)jT`>> z4(o?dZ|(XbgJG$Cg6OeNxSR)vYFfR2k^Yrat+<8 zncWJJvT28o*4b#ABO#Azn!s?HeXDk&1zI!olN?$zImKpwa>-tl|LtyDQ>wKl^l3LZ z6Mk*`s@T%9&cKJ<4!8$JVJAf&k3~bNwzyzI$neUW-iq>v#yR)K3X}38tkJXt3?P7lEM+3>-Mm7v#(!uI1R+ci(BxJyZ zkkc~)O))T2BV_5d^r_reFhCLGzrdsrsy2-7urRbn^2KlZ3%0fp*ae?o=KfZ9WWsyS zW#4+@h^t!~zSKvz&8>}HSG%noS6Y%TtOji$R^86`P3!KGPj1&sG5Tx-r%GvWR#CVq zI0HF^;$P<-O)l>=&)nM4>+p2T7d3+od^jhBNAcNx>ELDizoqt>3^SuJ3$GCFiVZ^< z&GMbwUzH%OQU~YTC=N0y^Y5g5pCRs0vS)Y$3Qy|AfE`2O%>1(bZ8SbmAcOhl^ zM7)i0SK+u#H|O@|e+zC_doeH(c9Qth?lUArn00KEYyY0RxabeeK?55W-<2iZesBA_ z%+vmSHz7$LqjenVzg5c2*7*0^fYHy<-o%$@m@+#Lot6Cl=dRhmh2Hq=JMm9-&Gt+t z1U$c4YP~l~6Zu*u3x|Ws)N7{+vp*6(ZC~j4crb9_v{~?~Xwdb=Ys$pL-UE~5mip=d z&+g9nI?wd+aJ>ey^&uOEs*%|eqMZdT!5QPM48R+&O*>CU@hnwJ6^i0secq`gryZjB zNmhPhaLrbZiS2+AeW9{CI9Wo^b~eQ7;Y@77xwB{cb&o`_1N$P`j>4XXw{by*Z@l!> zLp@w4Vuv|Cwt}tC9x6#ih5%>3Bt;?Bl90>0C;s}hAdAt$OKB^dxAS=FuSrodqd;)- z2szDM%;XDP_?HkTBQz@vn0VZX^w-vyfuy#dX=tBxM0Y1P8Zvbs4LkUK_1rKCl9=jV zU-h@JZ|HgC+2a~4ieSf!R>ujeXT7tDYEO4Ic$;Xb8Og$M1m|SA4WsMSFYB^w@9j%96uRetG4 zu8w5Wf=$HdIQ5Svf4;!9YM1nQuAJ7Vn=K2!uos_Y7m{@eTVqaUJXnO-ORtlR3RQ|W z(s9R#WVw$47qM?nxaVEP%U_Wj>;^OxR*(SpJ<*?Z^`Ht^VJlauOC}AyUauqWuygmJ z^i|fBCSW&S!nihk0uyZx7!DS^M=GUbCxSdzLj{}H{q8=SLF?A~2fejy^r(+y#|p)Zt=<} zsPVr0^Cyki;ehpGnnztg6Sek$Z2;l#d@y{j1=WT&k7w+@Pj${H)d*R?1MuJgDDzFt zVelT)k=bz7Q$C*;cif}Ax~UOyjjUJf_^2snd&fY723IZis2`WIE0t+~2C7NqDLA5* zHT)^t;T>l_vQF$zMk9GB*t;y_WryT?7>U=1LDevkt&hf{HI#w7n~bf{{DrR zEH?%{@6Emrv)>!4*U>s;TysM!c~WY!0g@6^R;)`rxIMYSm*~si0gE1o!SHe6pZ(sz zlW;h^y=VCMc?Qe#2ekQ!y+8vmhs0YL&NwFGa%-Hv&Tv4d&`>vV+8$2uscWL`2F+vTW29X{^)4jcyol={;Rcd6@xtv zZnKefbiJvxR#jWadJRImNb=NQSwH@wEm%=Y{jv}{KTBG+-XXVsPw<_WO^!D*{1VRA zR=#{;d(%BZ2#-kF)v2(|#4_W&uYewI%M=L=M;*ZJYX)Z>O0F>2J7e7u!G;z=LV(8~z@VTdp+!my6QJMYk`>@Q$ch zno2{pwSmZXqz?vCE_t{sgYDp)_gMIRFy1x4R`@Kvv~r_D7_nR@EM(73;F(if23T*k zOH5ahl2TQfM=NQJ-TcTo^VEAW#m(ZahQcbmbwarI zZ&xxqN0QjH-j;gkUTWqUtmV^emb++EM>=Mir7DV?NmS$?w+9gJBrf#OpdvT4ZDEI(purr<50=5O|}C*v(%6db3@VwRDSvy!;) zlh{_(MAP)_(*f1ht_$@Q^iCU`$*9LaEgiE}8E-$6sRo?)6Q8rc@}q6!3AI%=1@!5dmBd8b&+${sN@uUEG!iv$KAJR3%4>>xS*!M3 zySdM}>9TUj`F5?aW0b6fbICajVQLTFO6~rmXs(hOVKWB7@>z2==RU3z`U!nSUUa*) zqR!i;6;XA0^b?yAgDvIc!d$4TB2?ANJte#cyzRs98!$9@mPHC8Vz@}nN~c7gG0+S% zUFi-NEl>B9mzF!pX;U99S+F1lc&KX7=W@r~smJ{Rd~o|&S@I%8m16KBbv1g1M zvpBRx;iln*vf|R^M31EjQPx=H)!L;ub)3c}hh^VqjRZ2zA{vc3$FwZS$I{c7Fk3m{ zG$+&ZA%D(vUu8o$$=2FjjY^3(T~eKQQh<zE3IvcJSSUzch>NA#yGGcnKxi!cMnu`L!G3y!D4 ztS7o{1RRd#yM39ViES8O0Si)URf%TybXcr}hCVnP@;p7NDfnX0dCl|cc%ta)pcGd>_IP&2YO>MJSbgrhOd?nlbR*f z8l~L}RS~}7;OJ4MXK{z4Uc`C@)dr2XEcE*^+7$R?16!*PT z{DL>zdS5~Cv`1~zhJjEo(1`uM&_D9+U7c7hBe5V`U+3^655hkML5EM%j~;Wq1|K&R zMVb?cg4r9aFZ9n-)_iFe9i=v0oq5x_2tw{xHRh;26er?hT4g@of+n{jG|AyjuUBLu z_>_p&%KPVE^7!HTY1YC;rS@)1Ba%;Qa91c z-(PWJnqTEe_ux!pMBVIFdz%i;ETA3Ej9X|!gC9pltr-ORdw-hj7bzK}Krj1CcF%99 z^mDysfNZB~2cKotyHktO@zqGGBNV|zL!UCkNwNeoVNw>i-7Hj89GX|pk-)oJ2MYrN zSK=xz2A7Oh@gITFpJ}>cRlpv%HOzAOp`-KWwbuO^r=sg-cL8M9hccIOLkc1F{;8c= z(PH#<(Hs=YE-`a@b#<#eH_Vv%1&kY^#+ z%Ccxerr)z`jPg)!926}~nN7zBCx8wD+?;ZK=(Z{7DSt2(-qpY(BE4ZczA}*f1`JSV z&jsXwB)D&uoLaNafp#vMK{YQk4`t6>eIaR>n46BzKeTiJ8%)p2+d6e1o~^AZa_@;*TQ7GoT1V)^A1@K}b8Fq2 zUry7-M;oV(ebucBS#g<;Tpo-dH=P!@w`we?$n2yfZKd#|xFk8XQjIg#S8(CE42#`L z@_gXKlB$`3HUuFDDLuFPx}68Na)*W4LoHr784poNuo3HtNoyYMnB7k|R9=VB?|EqO z-Z%*PbnT7!n%L_iuNmFLohj(+FaR2WJjgWVr;-TmLZ=G6gW6H?5O5K11Oq0~+z==k ztKpon!|t!6i$|wX$(auoAKCci)RKk=)3c1^;h)VzP&=L~RM}#Ex<{WReef03*_uK; z42hRcauzv}ea$bwEe^(AC_T{G`686|GjVeB(1kXWu9Wc12M|>$U@kUHu>n1c8)p9Q zHqDg@BQRRE&0$ca&*OU+fDeM4oJky7e3$nM$*c0!&B6jNlJF+pA>FcslxUyPXGjW1Cl58K!!0c6nc9LUPO{9j>og`<0%;V>8_gjNSC7cvg)0~&h;H45pkIlbr&88a3 zLlNzWjsc4_Lc0v;;x0W^^+2aj)E_YEP#RzRW`NThycxwQk8Ur@Zu;ft`LSM2?n-1b zaYhAaV9m{bT&c-5gagQ3B>5|E+u_~7j4YP-n27z(7rzs?6sbKFsM_#j1^;kvQh!(- z1Qc?ZGi~MqM95TyT3!#7T#*U@~=UewbJo*dpfxtE9K>t2A zP$okTEV^C41FiLBD3^=mCug0>46%nkBio&^XWF;i--+c1uL_6Onvsyf|}3g(*`;u zPnP~I#I!PxX0t}NHcZdN%!FC<_bEReslbHq{o6)Xfg)|~v3B-d#ydU`<(-@=uk+Hx z9}3*&gNIp|e5*DTJ#OlZTbH4z#jZezydORgj6T`fjYP(f8g83+a(6H4H3YgX3(!_oA>r*I=`VfP?XSWy0-1TH-SuS#W(se&+q_}m z2jjhu0xoQCxVcmwasw=!^`2@0k?~~e?(BC4JtJ`D*P1XXW|+;9F!wz6@68!b6x)MV z?^CsVslUo2u3vw3WY*(GQ}0a2MM~2_$zR6=NZwu%%QAsvj+PU=DTt7|qA>hDpeb5e=qRPV^N2yO! z8J~Kw%>~_}sl4H;nZcz|g7eG1yn(*;ixY9Pi6%`=y?y~#b9(aZ@@!u1$xgN0c}(M6 z>-*=o&#UW{od+(5^?R7yCId4DGH#{VtE7D~3hy3^0lZU5_#xU>Yva?b#~l~1Kd!BLQ)IakiVlX$k+L`mvfgpMr*h z*vS?bg&n%ynH*bY~diGZR zAc}Os7q5_dO^{NGJb2{F9=#eo!zVxlv+hu9Xm6h>DGPyZQ`_x3b-CuRJyO=1$u+W? zb#MiOi)J|SzU-&a(#S6-yrPeKW|*>S{$lI zUrhYE@@a8lg%5%%80~U6%10&^$>qEg%WpnzIV|}an@0u5{D& zMF80C&2?_@U;P&YqaW1oQuk9?ZILboyHC4)@utUSmOeDC{rhK` z_!}G11p~pL0RyH}Y?iaKFZfc#nzHs3Ro`{x3~6o9x<`4^wtNiTVp!a8?cEu=`Y~~! zN!aAUm?mtR!p#|&hv!A){!Woy6Shf!Gx+mSg8$|HX=8=|$sg${vL51=! zflcLSPkeh&nA~}-6Y6I8!SrGJKY#Pg_iX<-mV4hS{=f1AUEZ%;%i(s)Qx%Q5v=ir2 zA6KZC`~j{w-u8NhS^HWk>FL|Iy8yhaWFApWNmQ@x*(r{g|92njmP8@i%w;aLmA)^U z+TFwTZ*yx8Hn$t=Eb2Q{`Ru`1<_G4teA_3gpmF9+NTIv?pm1U>5WeoqZwgki(QR#) zp(x=Aqa`z@SLwEiT=Krc0I;_x=}z!UWbTpCe9l4_Am{0fUOqe(WB17LUPGT&i8@1WhQ0LX7%_V>AH zpiYi~cK1;~z9w2%(}Fkr(<_Sj#&Ps22zhehedG^onfTdfQ1j(h0J4Pgz50@6ngRiy zhHSNmJVkd89Xu5NMdYI?{Rm$KSZnL$p}-P^#^yHz!<-I=YM4&u!)K(Cli4hdP?=z~ z_Aj8Ef!bt~0mS63U6~7;A`d;$#O9^;<-#p4^8EoNq9w8AOx?H7limft1`IQbrZHAW z4G7u91KOcsrg*?`-BwLd(7~x`;12YQtG^|Y{#k6X-Kh;@^ z)w%pycg7A7yahlm0%aFRb<>v6bu7KqBI?^>hY+X z8{xULyH=^eZjb347KnBy)6rasHxhTh1(XZpbQ6g zvi!i@WKJF}n;if0(~t8|$O{3fa8MHg$!~)*x6S}L4M>vwq^vb02~gLU5}y|8}jGkEGH(}j*m)edoPZbWV@W~3<}n<58Am z_I?&B7=zJ%ix%bzNT(xgE^S6~_ysht)1v930DQ$#fSJXm*cqF`vf@qhN_c;8UFB*pt8z;JkZ$kz@y>VF_r4nWRmMEO*ou~W@tl7agJwK zO{S>+>Qdl!>)GfJPgk*4;mW1C@Vb8bhMQzZ!CGKX|0rl?u;Tb&(SJh`WN8gP+T@5q ztGz*L=*+6?(SS=;d!?Kr{NS$TZt}MaFP(KFsg;=Rz0-Pp*8%LM@V1kUv;!xPy@ee+<+dSk5k${KI3=_iY&o>{O{I$@0WA@)PTu6Gu^!+_YZuJ>Kd zJN8ZWxwiKM|4LNTPQ3np(+e~&lkF3DsH`;1nSAW$&Sg&jH|PJeH2vM-a?lf=>6oIv z%@QeATw9*wHf&hb-}~pzn%C24U53|gy@*0h&%gv2*h(P7DN)Id*=Gv25mYa8|NAXe zFxI|X-1f{o(=owuK{#|iY1}!78Y_4^gEl9zsPD$!7AXEo-*>j44#Z(#Y|wnB5+jwm<|iX>XfDV70U9>YiT?P+zgqDd+Y%FV2Feo_2jaYL zt|SgXx!tcpCt$EAp6X<5_mi>aqh@;BK1k%|XOfi%*8In;+6oZkb(Y$5iXYS!YNx`x zBSQB?`#7^}4^#@yMiqO2%@_h5U=_uqZXbCLf9=>UnjfS-TvFX2#fvuUH!f@|oYR!Z zj~(gJl_;?{^rG9Q%|K>LVB&iaAK31?aXj(;JIRkl*qChERmuB5Kwje9e_#jt_2Zp` zUfZQj72;*ByukiFrf(kihNJfpXj)FqrVTHTT>5&_kmd?Wr=?K;-jUfPH|A%*jx28#AeNZ2P;>u+%8MBbyMs|79fBm|f}5)#=Ps39 zfL)!OPBcqsp&yMQlPW9pT4IBuB=HHZXBbGegnVE^m^_-?ZCDVK{eazK_iJ{L0#Yg# zJJQad{gnL0Hv-9DWR+MwxOC5p>X;B?S^7P))dC}+Aiwt?iN6#)GJF2Tw@#2`4GF$< zs8reS>Vxw^6E9+CXTtTC7gK$w;P9ZGmyS5;u0{S#q=h(X9~4qr-&- z36Cb0Cq`>8WOTE07Gn#1*s3rLcMjVzaiKTm>~EL4y!y_PK5@jQ7D{hGh2Ejrfj;*0 z@fr{yi79<+kHGA=(bPr~!^uXb$s7oLa*K;EqRr%!Gcp@QfTb9dXzgc$kte&8C?;@_ zf{4}#JDTZfw#;?z{?u-O$2mwFrZNF-fa0xWV139MEx1>qYcYFcEoODFDj(+QD(~i6 zIos6oMDK8KRLH2#ZR-wTo@@{!QfoFW_>fF-B5;sIBoBy>Lxw>$5klti#ZEyPii6t3&_){}kjZ~* zAsgmMBaqerYHgcSPR1~~mKNmZ77VggJWeS8ozt?BSTNjsF{D$22!p9W>n;1y-0&Rg z5G?R~c&nx!qZO=4kf9~en=p#VMd4@_pvQX3g~bD{)2Z1Yf8$))$fxqoWd=eU2&Zf$ zrzBS4IrY@hzBH%w+9j-2TNTxHp{0d3b@+!0V`RtLgN^G6pCnTAzi(e21AE%l^Js1H zdq1=wzklVkZ*={&`au-yIq{fyVE)OIZSD0oQGwl;-_{4{Rqf>F*^d_ItO)z8{{T6c zHq$^yNeLp9Q3|sBCMcOFGbQqQpA)&ytX_jPzLoSfj|sL!=|6R5i>kjnS86s(PMt%N zjhTrh>%K3))y5+b-3^^LYYzCm^_@88RG^3H`*?NoWg)ynODFxdvPn>fQ%dX!H%@Un zEx7}P)V{Brt9*1dtis9gj`>f!Z8?o+?iVAlOiIQ1u#EL9lc$Sgj!JrZ6NBkH19#Y| zmV%}?d#;fWmDn|a)D1t!+c~Forgi!DM=EtMB>QOHdh$H&V7*TA;k=6~HEY!s*XXOrR2N6>*pQ14_Hygl4)#eM9#Z@^JpV3I)q zS*BgmYl#J&rDbIwy$v3kKJuMwh(7z|a~Yd($LM}}ckT`J$qi|yW@&u(W-CxY7MJLX7T-hfXBT7 z#RWl8^s%1D`P!;2GjvYe=F|goSyo7lYJ7}&@)wbJYWtDPs51@1tf$o5_8LSbw9mvu z!P&dJv+xGdApV)egZwgAlGoN=zxp7+)|@yOI~Ob3f#J0n8P;&m`uS4p)`K~OJvm=R zo1=5TUOAVe)a-|BP+6E?(a3Q2)9LK9rW9EOQxQIHVUZB(X^&<>Z)ddmg~`TJ7MEJp zzb}`^Eu;8+q&I{OHz%3yq)qCS~;IUR_1F0F;FjYO}3n%XDV)rAEdFJ zzSVJ$tKor3yXQPrv(y5go=aH=p>U1VR@4qd$`V%q&FoPfa~(?mZy))>Z<`JVgp4>Ec}n^*nNGYjfX` z2ZJV;|ISGAR(Up?+Ab6)!NuDzqAjo>pSR$Q@zUxz8qRoObC-ePQ7Jqc#$0h?`kbbc zyaqX(ftp{Q1T;%<@|r}7V>LavQoCi-!ZLQn@P6ov(V&0{x{x+>p_OUF7idtp{vhQ1 zP}MBf|EWzY?^idL!Hgc40!0O|SV64@N*Zs<6{HC)piZ(FO$d_Dm-d!QX0-D5#~UZ7 zvNbZpSv97PZhF0qmqZERwPiSOG+jck+@kX}pW=&DZbk2Zh!m7}yOOxst>tID)u@Fs zJFrvXY~+m&vEixhsjDY>Xs$2+27fNh27%zmIaS<-Yi5REB##)VB&>kiW@4M*7FC;< zUo$G;lpE1?g>@s1W0#~`v3z#qK>*_HZ5duj95H7dZ($GyGdwkN zG=9Xfya&ZqD>yC`Px`4eDqX;XBAmT4(%24u1X3ZzVaM~rAcB{xu+7X3RWzJEj|p z*l4y91Zdn}O@Qj+nj<}molRH+$22kx+4CL)jGUMhW;j%WQ4v)4v z=TNWFz(>wG;*48)&!$NaRT))x*#pyV4sOe!sXvJ9=p6|TWY>uTp2sDgj(v*aA|nBA zI4KNf%pn$hDmBaeY_b~&={bhE0*g1=YmwZ8V7z<^*lzRnMJBld5){Z8n_ez=Wg}#i zoOe=gsJqAd=zZZy*YG{|3hM4nPn1%dZjoE^f{Hg{Z#Ie^zjRDUN~Xq4!pzhp`G(o2 zubMRgWsFv<2p`(U#i{5Cp<}nLy?d-eiu^PspY^Nbx-XYcO!rZ;M)H+xAi&(-@7{QO zD0%?s-r_s_&86QBB)4j&nN3j(ZcLBTPFo&R2K5r!`9CIDw1k%ajxvWl{qQ6e=rsnW z9S+IPGL<62Vx4KLFhX{c-7AZ?kVvzr5OJ@(N|^wSS!rd385uI|5(v0`9+lJ2*DFK$ z0XUP;U=>dM-mXyg@*!z^mXo|0{%96q^t)7#2K9ZRQ7XB}H>U<>xab{;;qrHNV=Q!@ zX@V=Xs{I{ijg|owG`QIMs5xFkk5`$7PnB_2G+%VJ##I=!To0P*nSzZ+27^}PLnlpL zHPoVRAtQO9%xTqpS3&uU?sXYr{)eg>sS7B@=jf<5Z}f>3pm|9Yu?B$Q@5}J9uzr!aU0pfY8m;ebSg?IN6_BQi#DC zg}KrYTih|SgKEXsCZoaF`p)FMLtSY@_5(n>N)ke6FB>&PJ{vL-Q(DUvSqu5e*?ySB;`a|jb}Kw$hcQA1|aJ)+hl<736? zM3>d6P1DNA4Nj-?;r8QOw9-j}Q25zg_l!a3ox~ORwDZ05-crIE|KIIqDHO7^zIBHT zGNRky-;Gw3?`!p_-`!uH&Kzo3w|}4WHYFE?f}HUYC?XkuflD+wfs~H&i9s*1;1#DM zT$)^3B!Mga0WHl@wT%H)u3)d})e-RCb|n5?)7^_{@&F{2NXZ?|Du@pI5MpMF!vM&% ze}7z2UweeN9SQ*%kE+QsX%HE2pH%rnmNt|sDKpYfqS_+}Mm0>{VogJ1e*zxvJ8dTK zEz;idtmnfT==3ww|cj7%{iq{zmY`5Z?~evbVF4gtuSkiWz;NOLDpW!$Og_jHD7SnW83*=k!7>8 z2+Sy2m+3E_MVALhJRsNBu8Wqh{%^u<_-}r?X_o_gu3~!h7#iLw_6YdPiB}iOWd7!w zNXwzJtk0%-W1(>Gqg-B@K32Mpdm%f;S~tnU7SoDMiA{P7F+cRHJ1T})qi`phmI~0wh5-C|Sns8{esQ4@x$#=Pn7W9_uDFR|a&IlzaBYUD_1U zP~^x{HAc{F1;=M>RPVK`HCMNrZv``d(7&{X#Z>QaJKuXaVc%NX@IUIi2Ux|?8$apk zHI-IOudR~5$L&9>w}BvB3vw+5ltyShUh?aqjB5Vfo~tqR_uP^ zREaxsu*>!&7TrDn4SUk`Xwm%~+`+O!m%2TbrfY$<*ZN9^p1Ir~(m5g4|MuT$4-;tRmm*qq@w^;Fr;V zfR!6-w7HdmMXurp-L&TUy{WXToSVmshOOSy(ht9o+S2(W`Y_mB^2U}2cO1tcr~Gr> z*ROdbe+bNGDsH>AE$ON69^{D=0_B?PI;V+nBd%Z`K!i# zzPCt_UU9dwCcYYEZm;kR7g(2Heb-8R|MSSLAsZq>_c5RYb2#mVbB$kOe)ai0;u=|KNzq zZ!-@+i`94bhd|KX@(2bWNrc5w+t43f7x9b`b(8C>NS`4pb;A+GDf;PGJh%ixgc7=% zy;J0+;O55Z!HSKQzwgVR(@4!pku`!zIoW9lG+_Nbr=$tKL$|F}F66Xo*_a1!Z%1#% za6vUudJWQc4MMzsg#l{k3}B{G*^}X;Xl$Wg+IjR;s)z zT34K~`m3Im3Mi#9oiLFt)Gi!c;1q8DBW#Z53x4y7d?mw%g@o}|gfApUP}9PT zF+iH`ZFK`bl;QSQJQ)a>NiIXFYpUOQ(fzZd^?4h!w6Tcy1+|48TAf<_nYzdj;a7?3 z>3(F&(IkE<8FtZLw|%03D!Vv5o5Jt%?!g`hU_r||9Pw)FQQQWWJ`Kimz%k%Nj*`gdT zy}p&Y%{_JEIQKX1yKbX)QeIEujX#lg$4l|(?u{7v^$QtA%1*JqNE1&-cabk8MR9lU z>(#s37~xQoF{l3WsD_XEcScSsF|~$3272Hu8Sc*6u3+3@+uG(Q&Gj>*{)6G4wgp|A zs-?%p-f(mszcftzm84Aqbzs>^7)@e?wuWoHq{m9-MrQxU7%5|3(eZ1<=$;7&zsfZ) zmZublpKpF-UK{L@Q}d)}I~f0F?{-yeySr2XRt3*~k0?K^w-{G6+!X`{RkhNReh2lt zGcu`UM;B;?ulf@zRE89TMutBQwM=f5>cRa$FHd)yiF#e1*(o2ZQ`vdixzLkRe*X5a z05&DYf6v(WoWRqB6HIL2;{aow^E#I&*_E~-`GLl_?XgC<<}ztxW+JXBZm8`MB4(S2l?yJZZRVDWSt40rp`zkKfsx`a zXl~8>y#K-TdCvLV=bY>QUe_)3nk#%~uxZ@r2Wh9vKnttB@khLL%CxK96#OIgOJa4wSoWW@ zoGWq7j(^_>*KX*w`SQB2c9Ttc`6zMsja?c{PhcjT11kY6fvP8V5)R$*da`dypxrq{ z@MuX+PWJH#|E@jWhCsIoQxt4g!c<_X>E%DHb_lzY_44Dj;h5e^FYn4@#Vii$@DEoD(1 zMq3p_zL$eX?1V_WsdRCjZhHg4B#@XnkN}XvG!_C(YkdBg}Sh}`cZd&vRJkNu%V#w$Y zJ2oEGovdF3UlizX)Y7PjZ2Q+ci)LhN>jck)Ld#rFTQmkm0K3gnbhaWOzBTVUtsycL z;Kc)~Yv*4*P=51)!u4I@vv`O;+2b_R14Y%}DOojwRs-G+Ri2cCcGm>7&}6s2x$UQtHgS1(OMWvx1Ed)8mMo(;NY z>MZ^v#X&06NlE+>S(TXo)+ztq%i&+$U(C6)mIkYf(8pKz75ww--rlJ$1DnA<4CnTf z=!V}KgC>bzQ}LzS(qEz`Lmpkrw0Ego^-KBRebV7OdVs6-OvGS&rN_%{j=yR$lw&V1 zp@V3f%gk(W24@^PFlxly=;k8ELA2>wC}kZNn=v#OXq}?}``3yyv;8Gk3NE;qZSeJJ zuNdcT@Y{0ycKJw&%}K|bRll)@#!K{lpZYA^SH+G*mUi!xBRV>k=Hw~ zH=oOm2Mhk%QF5vHOIPRDp=H+XySs-*XWvkS>j=k5JHWnAlbkvGTy@;0{2kfp-VyyPIi2^pvo*glH0DOKxW*+sbPG$(0lm9#_I? z(~wwkP0vq+=eW8EaQ!5~=M9jtS>2ij|AB(4lAmAhRjE%&`0V7 zd6gZRoN_mHY9)Wbud=Jb04gQ!3&Unmxo*6bSeCg(2MrFbO{BUi)t7I7UO zux~Hrf$87=4%%IMb8I~YIN=6NB7K7o#t;(5+@K_V>4DJcHFTw}hj|`+t(_4Kp!*2t zn8b>AcD>I;WxV>C@y>F?)fhLWWDeTBFckZvkNs{haDeS?9bG@|wbV%JRe!INi-`qY z*tK^V!az@qRL?XKgPo7gPVw$-QU}`cxl+0UtEXVwWm7^)7ta!iADKRwu22V~whR~s zvZN^ESY_mPhrq!icEJ^UXiB8KyG&9tT~oOrnF*S`aOU%iPo+=P%ezRcqqEk#v8Jzs zSwMM7riISY?d`RWY(LmJL$}MI%_kwCs{!?UY=%tb)jrYfdYhWivUAwbvroy;|LuPb z*T0WhvM~G}-90A(^^vx=hK0VQoX?F2di{o&*HmS43Re?fSGm5s- zscFllECKi#(;(`M!2zK$dWxYBDvg6M$PV3`rd{r<$AvPl8e@q5z#`i8K8Ox1MV^Zw zwb?BF@cpLgrnNe8`fhg1odi276cBWSL)gx#u7~opVt5w7^8#EBwn$!Tn>g~PHiGOy zAVTR$LTEJxOItYPoT+820WuW3{Fq`SXn!)vJbHstoKu)arW}p!ku$W_2s`mZ9w%L>FWCH4 zIhECu%XX4$EJxEa{9vgwk*bL%U~7E&Fe%Qbtp5i}Z3fR6GI`dc)y~XR_e9~C(7+dC zyS#q{_VzwuFl>VNd!~~k&JDxGk`KbLdVoxX z(T(hn;Q8x2*s2 zoP5%AcnulNx+sm!6(kwwQ6a&R0H?@{A-l|3T*Rn9+RC%NMHZQvou1@|e|I=A$Zi;A2E&6OdnANNgEyrmf;J3qgK#?W zpg3p}#CF<&ebvs>&Us5_X64J^UsCj#C-k7f?RPG)LD1l%PmDD8ZIv+4CJk6A(FSo!Q-AbgRN{yQd7jJ`w)+c|GjQsG;Nc>txaya zS%dCr%r_1msZ?A@l;sqh$-8~|->V@&Btc8X_n-(P2$g!ctn{wl=B#={hQ6N_`Jk2d zpteO;`$Y@cwNq#Ox_*EC^xekk?Uu2%EOWd5w^Pg4`D1P<<9(cup@WB3{+h9VStkJe z8f`5(rNb|Y{_j^Mk9(_gllyi#x_2z^Q7?hC>;*0thu)S+xJcJOIJ(7~{u-tF zAh^L_KM+Gx=V-|Zhs_rATbA{F{~C$YtmWO&=aAis z9ky(^f&xP=K)Q5&(C%AJc!*)o<-hlR16{!~4^B75V9-F+UYP>fqqp%6lA!?yQSvM| zhi>9ScJN7{uCtwKUynJFK^N>IOFZR;x0#-x;9K?FK@F|yf(H?4>qdvBs&7{JwcfAH zZjZ41SS32X6e&L9R5=xyuxU`z0L@8WBcA;f~| zc8|{=S{fcts67?uA5hc!{`(YX%Z_*BjZNVJ%T-esYd@VkqzMEXXfE`W!P(8RR00MC zo`!cRc659uc$i!vJ7sDJy%{b`gn@Tq%pq!PqABMQ*a|O$UC8RTL(0AtkKpAY=b3La z0Zl-+|3V=?6WXoe$*V2=i26K2telC$zo!LO23g-F{z&b+H4`n?<}x&}poB#M@q@-M zX!#XHjP1TYFNgBwBt19Yv8>m50)jS77+>@Vo z+{%Dl4t97M^CXrQ!g@tK4T5%!{)R8DlB9YyJ@;##dMx==RDFweI&eMe#rdwYsgbW9 zjLT2^t#Zp1ERx_0wH*w;jAG~?(8NpyBV;gdfx8PL4uG+kjZiYqd5V4z=gLBHS!VIh`228XIls5~Ue`GBSYhAYj= z;SMI5Tg(Z!nS49yPKh7X8hM>thwum(S~P8#*R1Z>wfBTsJcUSYCq3Ijgk4N`ZP=xv zf2)~CP6kAt{iJGHQj%7bherte>Y73uEgIrJZOfq_9E6#ASnPwk4WMA-K;)hviE{@O z{N;9T6T_eevaLfOeOf`gQC7or-nR{AooVLs8dL;^mVOdid)=e;k_yOmf z%lb`t$GW*%9W*PfQirP~VdptpCI*khi`{3=hORp)hiK)Xj7&Fcdi2X_jij~-Phl%T z9mK5ua#wpIKgJO;U}mM}L7wrzL%mndUSN8TQwL1k2_Q@xntO~dm(z4BqU%>?w_%{I zYMihhqnQg#d?FP*nTjZGicD31R(emPEncqR>_qWQw330eN-V<$4$IumyNbC=CC*m4lXN3y5| zPgy=`@Sf}#3jU6V<_y;h&=n_jI_5I*a0UP|>1!*@pS{UUQi`^jGX0B(`>GcGdLv3& z1Ck%s0pr4yO|QnS5vvn@Vw?T_f5g6d<~6W9`*v1~FveZZ$9Zy1DrSY&3m}sO3?Grm z#nnsU%z6ZUKmUCu*N*=$3K9Z|gU}81K+tWhb}c=(^~C1p z38Az|5In{{?X~Y4`vK@LjruW8vN~z!LlQ1b+gM@dHBhjMufwu-_Rg{^#$Z=g4;3H+{cqb?w(w} z3|WICdz>$NtGO78G@eSb!8QLS@kge-z~oI>#eM^ z1{B*8jvwF4hF?2;(m$Y96d73;d3-YbcR~_Ynmfgp!Y?92RS2ltP)4Q(azPj^!hlN& z&T_@mJu)sx3iPTGF|ooxF1uji#y{~OrpEg(ZX|o{?+#pW9k{&0>*ng=$my4-&QC6h zIsA$Jeut|jTM)1Meg-B_kxK3j>6sSM%FqZd1caG($PNtu@Q~>v4?($b$80;R}P3qPoA5}Z;)RMA?BestF|fz5@dC*zVj;S2|^3LE=d zb*w-)WK4K8R)h^>1yg>rX{wgo5C>3P`g)`KU*6*xE6Nm*IAKeY6i`#(U)lDy?!-W1 zFo=tua0c`6IYWQa6QL{(dI3G%;9d}fehocmhVv`mzHDP5UvAlEAs@Ly>stTcY;2C zoVCE~PFCPBZ2~LbV9jST_NW)}Yto8pJmVzajyoU5^d?wTZu{%%R8yYWls!rNwdItfGxt>7ZEQQL>Y17KcN*ih zvy2}&?%ew4OG%fasFqf;VR1~9oYqWPwE5#EeXLm@YIs~(}kEHscd8gr7biWq+ zWEryXkZ?n$mKy+IDRAfCG{xXih{Qk8iZX#KVW2wvFBh?BB|W{Gx93Y_zIv)oA*s6e zd_KBuP~T1X|6NCYDB=XY;QTYG*?}x!T{;KFc38gg+|&FKr0||xOTz!|hLN*ng@5-L zQ8_iRB^km4gN>V+@=hGsxi>XWH6oNR`u{8|3!k1*6txOgXFmVDmJO1j9tqM4947QB zRF4haG~=!Niy#b#Oxr}EMV17Ts^tmA_9mRs2B~2}L?T8tPCxkWfA94#+Ad007kM1T z)Tkq5dKjR1k|nd^1;^VM^~`8#{*p>GJMzN{kE8+8-cgEr;#Yk;s;xur$3rFiSxg;0 zTY|kEow8z>!FEF<#)~d`GgG6fxFopY!~nRw5_v`VclLg5Okgy<(2HRA!*9!pl8W$M z)s5%wjQCB=d>;_*kPz~#0m{#1boY3!3i=2NHixz(x(Yczs=E)w^308m&CN?G>rhnf zfdzdH0UFTi7L>x4*zRCa?+fbibpVu&SN6=&GJ(!LruukQud92gsPX)utFz>%e(S8$ z8!2sprH@fcXiK;w`%h<5($ZKmHBw5ZuG~s@vjL~1I=g$t*Abevprt_4G{hh? z!d1?(<#U-iFgWd{w-e3h#nRg|okFEdJ0ZgE zqklimkp#wYQB?cbp-sx4h>AvyrKApRa86-h?1Tr3Q+xhNT{ve@uu2*wPJF$2L@na@ z19{uu579gY`=*slhdOg}>kJ9Fffv|&&eX2(G}%E|W-L5okQTk>dklZeQ1ID=405{T zRb2C-p;L&KK|*S@p6moJy+D%-iV<325Ye5AniSEoTQx1Ml;cF=_(Wa*_2HA1g|P#G-v z2e5l&l9&A01E7W;)OYb`T)TTQiet6Xi&?a&aWq1!Oncmt)d z494X}ae5Xz(i%u^7NPK5KB{MlhwcCnXAO195+BF=JJmH%QTMDYPE;#@*;2l8@n_TY zuJlMIIN9VfE*?IGPV(*_i4aq2y@ zi;G?Ub{nYR7PATR_4C70pAgCGC&JjiIZuja4OBcJxw&NR20RAE&Yf59r8UobFW z^aKXg;x@x@A5k?Yg2FQGsQVXs7BXX;Ozk?q-KIJLYNcV@cbzwYJ16^XE`0-X7Z*#@ t$YOIq3prFfRvhjr`L8lHF^rSOPEd|6Y#(nbR(l2o-Xsc3N6r5m_&;{PK4bs@ literal 0 HcmV?d00001 diff --git a/zbar/docs/pic/result.png b/zbar/docs/pic/result.png new file mode 100644 index 0000000000000000000000000000000000000000..ecbdaadcc60d420c2326f2a78d7d0f66185545ee GIT binary patch literal 14261 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 aUnZKXOUtXE0_TyEQ~S>VBmVa{ApZ|rX_@~3 literal 0 HcmV?d00001 diff --git a/zbar/docs/rom_integrate.md b/zbar/docs/rom_integrate.md new file mode 100644 index 00000000..ab4a1196 --- /dev/null +++ b/zbar/docs/rom_integrate.md @@ -0,0 +1,143 @@ +# zbar如何集成到系统Rom + +## 准备源码工程 + +本库是基于OpenHarmony-v3.2-Beta2版本,在RK3568开发板上验证的,如果是从未使用过RK3568,可以先查看[润和RK3568开发板标准系统快速上手](https://gitee.com/openharmony-sig/knowledge_demo_temp/tree/master/docs/rk3568_helloworld)。 + +### 准备系统Rom源码 + +系统源码获取请参考:[OpenHarmony源码下载](https://gitee.com/openharmony/docs/blob/OpenHarmony-v3.2-Beta3/zh-cn/release-notes/OpenHarmony-v3.2-beta2.md) + +### 增加构建脚本及配置文件 + +- 下载本仓库代码 + + ``` + cd ~ + git clone git@gitee.com:openharmony-sig/tpc_c_cplusplus.git --depth=1 + ``` + +- 三方库目录结构 + + ``` + tpc_c_cplusplus/zbar #三方库zbar的目录结构如下 + ├── adapted #存放三方库适配需要的代码文件 + ├── docs #存放三方库相关文档的文件夹 + ├── BUILD.gn #构建脚本,支持rom包集成 + ├── bundle.json #三方库组件定义文件 + ├── README.OpenSource #说明三方库源码的下载地址,版本,license等信息 + ├── README_zh.md + ``` + +- 将三方库拷贝到OpenHarmony源码的third_party目录下 + + ``` + cp ~/tpc_c_cplusplus/zbar ~/openharmony/third_party -rf + ``` + +### 准备三方库源码 + +``` +cd ~/openharmony/third_party/zbar #进入三方库目录 +git clone https://github.com/zbar/zbar.git #下载三方库源码 +``` + +## 系统Rom中引入三方库 + +准备完三方库代码后,我们需要将三方库加入到编译构建体系中。标准系统编译构建可以参考文档[标准系统编译构建指导](https://gitee.com/openharmony/docs/blob/OpenHarmony-3.2-Beta1/zh-cn/device-dev/subsystems/subsys-build-standard-large.md) 我们默认三方库是属于OpenHarmony的thirdparty子系统,如果需要自己定义子系统参考文档[如何为三方库组件中添加一个三方库](https://gitee.com/openharmony-sig/knowledge/blob/master/docs/openharmony_getstarted/port_thirdparty/README.md) 新增需要编译的组件,在OpenHarmony源码的vendor/hihope/rk3568/config.json文件中,新增需要编译的组件,如下代码段所示,在thirdparty子系统下面新增zbar组件 + +``` + { + "subsystem": "thirdparty", + "components": [ + { + "component": "musl", + "features": [] + }, + { + "component": "zbar", + "features": [] + } + ] + } +``` + +## 系统Rom中引入三方库测试程序 + +zbar原生库提供了测试用例,如需要引入测试程序,在OpenHarmony源码的vendor/hihope/rk3568/config.json文件,对应组件的features中打开编译选项: + +``` +{ + "subsystem": "thirdparty", + "components": [ + { + "component": "musl", + "features": [] + }, + { + "component": "zbar", + "features": [ "enable_zbar_test=true" ] + } + ] +} +``` + +## 编译工程 + +在OpenHarmony源码根目录下 + +``` +cd ~/openharmony +``` + +- 执行编译 + + ``` + ./build.sh --product-name rk3568 --ccache + ``` + +- 生成文件的路径 + + 可执行文件和库生成在out/rk3568/thirdparty/zbar + +## 运行效果 + +将编译生成的库和测试文件放到板子上运行,为避免每次将文件推入设备都烧录整个镜像,我们使用hdc_std工具将文件推到开发板上 + +- 首先将hdc_std工具编译出来 工具编译出来所在路径out/sdk/ohos-sdk/windows/toolchains/hdc_std.exe + + ``` + hb set #源码根目录下使用hb set 选择产品ohos-sdk + hb build #然后编译 + ``` + +- 将工具拷贝到Windows,可以为工具目录配置环境变量,也可以在工具所在目录打开windows命令行 + +- 将编译生成的zbar_test可执行文件和二维码、条形码素材qrcode.png、barcode.png准备好 + +- 将准备好的文件推送到开发板,在windows命令行进行如下操作 + + ``` + hdc_std shell mount -o remount,rw / #修改系统权限为可读写 + hdc_std file send zbar_test /data #将可执行文件推入开发板data目录 + hdc_std file send libzbar.z.so /system/lib64 + hdc_std file send libzbar.z.so /system/lib + hdc_std file send qrcode.png /data #将测试文件推入开发板data目录 + hdc_std file send barcode.png /data #将测试文件推入开发板data目录 + hdc_std shell #进入开发板 + chmod 777 zbar_test #添加权限 + ./zbar_test barcode.png #条形码解析 + ./zbar_test qrcode.png #二维码解析 + ``` + +- 运行测试程序 效果如下图 + +- ![result](pic/result.png) + +## 参考资料 + +- [润和RK3568开发板标准系统快速上手](https://gitee.com/openharmony-sig/knowledge_demo_temp/tree/master/docs/rk3568_helloworld) +- [OpenHarmony三方库地址](https://gitee.com/openharmony-tpc) +- [OpenHarmony知识体系](https://gitee.com/openharmony-sig/knowledge) +- [如何为三方库组件中添加一个三方库](https://gitee.com/openharmony-sig/knowledge/blob/master/docs/openharmony_getstarted/port_thirdparty/README.md) +- [标准系统编译构建指导](https://gitee.com/openharmony/docs/blob/OpenHarmony-3.2-Beta1/zh-cn/device-dev/subsystems/subsys-build-standard-large.md) \ No newline at end of file -- Gitee