clazz) {
- return openPage(clazz, false);
- }
-
- /**
- * 序列化对象
- *
- * @param object
- * @return
- */
- public String serializeObject(Object object) {
- return XRouter.getInstance().navigation(SerializationService.class).object2Json(object);
- }
-
- @Override
- protected void onRelease() {
- unregisterSlideBack();
- super.onRelease();
- }
-
- /**
- * 注册侧滑回调
- */
- protected void registerSlideBack() {
- if (isSupportSlideBack()) {
- SlideBack.with(this)
- .haveScroll(true)
- .edgeMode(ResUtils.isRtl() ? SlideBack.EDGE_RIGHT : SlideBack.EDGE_LEFT)
- .callBack(this::popPage)
- .register();
- }
- }
-
- /**
- * 注销侧滑回调
- */
- protected void unregisterSlideBack() {
- if (isSupportSlideBack()) {
- SlideBack.unregister(this);
- }
- }
-
- /**
- * @return 是否支持侧滑返回
- */
- protected boolean isSupportSlideBack() {
- CoreSwitchBean page = getIntent().getParcelableExtra(CoreSwitchBean.KEY_SWITCH_BEAN);
- return page == null || page.getBundle() == null || page.getBundle().getBoolean(KEY_SUPPORT_SLIDE_BACK, true);
- }
-
-}
diff --git a/AndroidOCRTool/app/src/main/java/com/xuexiang/templateproject/core/BaseFragment.java b/AndroidOCRTool/app/src/main/java/com/xuexiang/templateproject/core/BaseFragment.java
deleted file mode 100644
index ba05fb2..0000000
--- a/AndroidOCRTool/app/src/main/java/com/xuexiang/templateproject/core/BaseFragment.java
+++ /dev/null
@@ -1,353 +0,0 @@
-/*
- * Copyright (C) 2019 xuexiangjys(xuexiangjys@163.com)
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.xuexiang.templateproject.core;
-
-import android.content.res.Configuration;
-import android.os.Parcelable;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-
-import androidx.annotation.NonNull;
-import androidx.annotation.Nullable;
-import androidx.fragment.app.Fragment;
-import androidx.viewbinding.ViewBinding;
-import com.xuexiang.xhttp2.subsciber.impl.IProgressLoader;
-import com.xuexiang.xpage.base.XPageActivity;
-import com.xuexiang.xpage.base.XPageFragment;
-import com.xuexiang.xpage.core.PageOption;
-import com.xuexiang.xpage.enums.CoreAnim;
-import com.xuexiang.xpage.utils.Utils;
-import com.xuexiang.xrouter.facade.service.SerializationService;
-import com.xuexiang.xrouter.launcher.XRouter;
-import com.xuexiang.xui.widget.actionbar.TitleBar;
-import com.xuexiang.xui.widget.actionbar.TitleUtils;
-
-import java.io.Serializable;
-import java.lang.reflect.Type;
-
-/**
- * 基础fragment,使用XPage框架搭建
- *
- * 具体使用参见:https://github.com/xuexiangjys/XPage/wiki
- *
- * @author xuexiang
- * @since 2018/5/25 下午3:44
- */
-public abstract class BaseFragment extends XPageFragment {
-
- private IProgressLoader mIProgressLoader;
-
- /**
- * ViewBinding
- */
- protected Binding binding;
-
- @Nullable
- @Override
- protected View onCreateContentView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, boolean attachToRoot) {
- binding = viewBindingInflate(inflater, container, attachToRoot);
- return binding.getRoot();
- }
-
- /**
- * 构建ViewBinding
- *
- * @param inflater inflater
- * @param container 容器
- * @return ViewBinding
- */
- @NonNull
- protected abstract Binding viewBindingInflate(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, boolean attachToRoot);
-
- /**
- * 获取Binding
- *
- * @return Binding
- */
- public Binding getBinding() {
- return binding;
- }
-
- @Override
- protected void initPage() {
- initTitle();
- initViews();
- initListeners();
- }
-
- protected TitleBar initTitle() {
- return TitleUtils.addTitleBarDynamic(getToolbarContainer(), getPageTitle(), v -> popToBack());
- }
-
- @Override
- protected void initListeners() {
-
- }
-
-
- @Override
- public void onConfigurationChanged(@NonNull Configuration newConfig) {
- //屏幕旋转时刷新一下title
- super.onConfigurationChanged(newConfig);
- ViewGroup root = (ViewGroup) getRootView();
- if (root.getChildAt(0) instanceof TitleBar) {
- root.removeViewAt(0);
- initTitle();
- }
- }
-
- @Override
- public void onDestroyView() {
- if (mIProgressLoader != null) {
- mIProgressLoader.dismissLoading();
- }
- super.onDestroyView();
- binding = null;
- }
-
- @Override
- public void onResume() {
- super.onResume();
- }
-
- @Override
- public void onPause() {
- super.onPause();
- }
-
- //==============================页面跳转api===================================//
-
- /**
- * 打开一个新的页面【建议只在主tab页使用】
- *
- * @param clazz 页面的类
- * @param
- * @return
- */
- public Fragment openNewPage(Class clazz) {
- return new PageOption(clazz)
- .setNewActivity(true)
- .open(this);
- }
-
- /**
- * 打开一个新的页面【建议只在主tab页使用】
- *
- * @param pageName 页面名
- * @param
- * @return
- */
- public Fragment openNewPage(String pageName) {
- return new PageOption(pageName)
- .setAnim(CoreAnim.slide)
- .setNewActivity(true)
- .open(this);
- }
-
-
- /**
- * 打开一个新的页面【建议只在主tab页使用】
- *
- * @param clazz 页面的类
- * @param containActivityClazz 页面容器
- * @param
- * @return
- */
- public Fragment openNewPage(Class clazz, @NonNull Class extends XPageActivity> containActivityClazz) {
- return new PageOption(clazz)
- .setNewActivity(true)
- .setContainActivityClazz(containActivityClazz)
- .open(this);
- }
-
- /**
- * 打开一个新的页面【建议只在主tab页使用】
- *
- * @param clazz 页面的类
- * @param key 入参的键
- * @param value 入参的值
- * @param
- * @return
- */
- public Fragment openNewPage(Class clazz, String key, Object value) {
- PageOption option = new PageOption(clazz).setNewActivity(true);
- return openPage(option, key, value);
- }
-
- public Fragment openPage(PageOption option, String key, Object value) {
- if (value instanceof Integer) {
- option.putInt(key, (Integer) value);
- } else if (value instanceof Float) {
- option.putFloat(key, (Float) value);
- } else if (value instanceof String) {
- option.putString(key, (String) value);
- } else if (value instanceof Boolean) {
- option.putBoolean(key, (Boolean) value);
- } else if (value instanceof Long) {
- option.putLong(key, (Long) value);
- } else if (value instanceof Double) {
- option.putDouble(key, (Double) value);
- } else if (value instanceof Parcelable) {
- option.putParcelable(key, (Parcelable) value);
- } else if (value instanceof Serializable) {
- option.putSerializable(key, (Serializable) value);
- } else {
- option.putString(key, serializeObject(value));
- }
- return option.open(this);
- }
-
- /**
- * 打开页面
- *
- * @param clazz 页面的类
- * @param addToBackStack 是否加入回退栈
- * @param key 入参的键
- * @param value 入参的值
- * @param
- * @return
- */
- public Fragment openPage(Class clazz, boolean addToBackStack, String key, String value) {
- return new PageOption(clazz)
- .setAddToBackStack(addToBackStack)
- .putString(key, value)
- .open(this);
- }
-
- /**
- * 打开页面
- *
- * @param clazz 页面的类
- * @param key 入参的键
- * @param value 入参的值
- * @param
- * @return
- */
- public Fragment openPage(Class clazz, String key, Object value) {
- return openPage(clazz, true, key, value);
- }
-
- /**
- * 打开页面
- *
- * @param clazz 页面的类
- * @param addToBackStack 是否加入回退栈
- * @param key 入参的键
- * @param value 入参的值
- * @param
- * @return
- */
- public Fragment openPage(Class clazz, boolean addToBackStack, String key, Object value) {
- PageOption option = new PageOption(clazz).setAddToBackStack(addToBackStack);
- return openPage(option, key, value);
- }
-
- /**
- * 打开页面
- *
- * @param clazz 页面的类
- * @param key 入参的键
- * @param value 入参的值
- * @param
- * @return
- */
- public Fragment openPage(Class clazz, String key, String value) {
- return new PageOption(clazz)
- .putString(key, value)
- .open(this);
- }
-
- /**
- * 打开页面,需要结果返回
- *
- * @param clazz 页面的类
- * @param key 入参的键
- * @param value 入参的值
- * @param requestCode 请求码
- * @param
- * @return
- */
- public Fragment openPageForResult(Class clazz, String key, Object value, int requestCode) {
- PageOption option = new PageOption(clazz).setRequestCode(requestCode);
- return openPage(option, key, value);
- }
-
- /**
- * 打开页面,需要结果返回
- *
- * @param clazz 页面的类
- * @param key 入参的键
- * @param value 入参的值
- * @param requestCode 请求码
- * @param
- * @return
- */
- public Fragment openPageForResult(Class clazz, String key, String value, int requestCode) {
- return new PageOption(clazz)
- .setRequestCode(requestCode)
- .putString(key, value)
- .open(this);
- }
-
- /**
- * 打开页面,需要结果返回
- *
- * @param clazz 页面的类
- * @param requestCode 请求码
- * @param
- * @return
- */
- public Fragment openPageForResult(Class clazz, int requestCode) {
- return new PageOption(clazz)
- .setRequestCode(requestCode)
- .open(this);
- }
-
- /**
- * 序列化对象
- *
- * @param object 需要序列化的对象
- * @return 序列化结果
- */
- public String serializeObject(Object object) {
- return XRouter.getInstance().navigation(SerializationService.class).object2Json(object);
- }
-
- /**
- * 反序列化对象
- *
- * @param input 反序列化的内容
- * @param clazz 类型
- * @return 反序列化结果
- */
- public T deserializeObject(String input, Type clazz) {
- return XRouter.getInstance().navigation(SerializationService.class).parseObject(input, clazz);
- }
-
-
- @Override
- protected void hideCurrentPageSoftInput() {
- if (getActivity() == null) {
- return;
- }
- // 记住,要在xml的父布局加上android:focusable="true" 和 android:focusableInTouchMode="true"
- Utils.hideSoftInputClearFocus(getActivity().getCurrentFocus());
- }
-
-}
diff --git a/AndroidOCRTool/app/src/main/java/com/xuexiang/templateproject/utils/service/GlideEngine.java b/AndroidOCRTool/app/src/main/java/com/xuexiang/templateproject/utils/service/GlideEngine.java
deleted file mode 100644
index c57c80a..0000000
--- a/AndroidOCRTool/app/src/main/java/com/xuexiang/templateproject/utils/service/GlideEngine.java
+++ /dev/null
@@ -1,98 +0,0 @@
-package com.xuexiang.templateproject.utils.service;
-
-import static com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions.withCrossFade;
-
-import android.content.Context;
-import android.graphics.Bitmap;
-import android.net.Uri;
-import android.widget.ImageView;
-
-import com.bumptech.glide.Glide;
-import com.huantansheng.easyphotos.engine.ImageEngine;
-
-/**
- * Glide4.x的加载图片引擎实现,单例模式
- * Glide4.x的缓存机制更加智能,已经达到无需配置的境界。如果使用Glide3.x,需要考虑缓存机制。
- * Created by huan on 2018/1/15.
- */
-
-public class GlideEngine implements ImageEngine {
- //单例
- private static GlideEngine instance = null;
- //单例模式,私有构造方法
- private GlideEngine() {
- }
- //获取单例
- public static GlideEngine getInstance() {
- if (null == instance) {
- synchronized (GlideEngine.class) {
- if (null == instance) {
- instance = new GlideEngine();
- }
- }
- }
- return instance;
- }
-
- /**
- * 加载图片到ImageView
- *
- * @param context 上下文
- * @param uri 图片路径Uri
- * @param imageView 加载到的ImageView
- */
- //安卓10推荐uri,并且path的方式不再可用
- @Override
- public void loadPhoto(Context context, Uri uri, ImageView imageView) {
- Glide.with(context).load(uri).transition(withCrossFade()).into(imageView);
- }
-
- /**
- * 加载gif动图图片到ImageView,gif动图不动
- *
- * @param context 上下文
- * @param gifUri gif动图路径Uri
- * @param imageView 加载到的ImageView
- *
- * 备注:不支持动图显示的情况下可以不写
- */
- //安卓10推荐uri,并且path的方式不再可用
- @Override
- public void loadGifAsBitmap(Context context, Uri gifUri, ImageView imageView) {
- Glide.with(context).asBitmap().load(gifUri).into(imageView);
- }
-
- /**
- * 加载gif动图到ImageView,gif动图动
- *
- * @param context 上下文
- * @param gifUri gif动图路径Uri
- * @param imageView 加载动图的ImageView
- *
- * 备注:不支持动图显示的情况下可以不写
- */
- //安卓10推荐uri,并且path的方式不再可用
- @Override
- public void loadGif(Context context, Uri gifUri, ImageView imageView) {
- Glide.with(context).asGif().load(gifUri).transition(withCrossFade()).into(imageView);
- }
-
-
- /**
- * 获取图片加载框架中的缓存Bitmap
- *
- * @param context 上下文
- * @param uri 图片路径
- * @param width 图片宽度
- * @param height 图片高度
- * @return Bitmap
- * @throws Exception 异常直接抛出,EasyPhotos内部处理
- */
- //安卓10推荐uri,并且path的方式不再可用
- @Override
- public Bitmap getCacheBitmap(Context context, Uri uri, int width, int height) throws Exception {
- return Glide.with(context).asBitmap().load(uri).submit(width, height).get();
- }
-
-
-}
\ No newline at end of file
diff --git a/AndroidOCRTool/app/src/main/java/com/xuexiang/templateproject/utils/service/OcrCallback.java b/AndroidOCRTool/app/src/main/java/com/xuexiang/templateproject/utils/service/OcrCallback.java
deleted file mode 100644
index 058a565..0000000
--- a/AndroidOCRTool/app/src/main/java/com/xuexiang/templateproject/utils/service/OcrCallback.java
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * Copyright (C) 2024 xuexiangjys(xuexiangjys@163.com)
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.xuexiang.templateproject.utils.service;
-
-import com.huantansheng.easyphotos.models.album.entity.Photo;
-
-import java.util.ArrayList;
-
-public abstract class OcrCallback {
-
- public OcrCallback() {
- }
-
- public abstract void onResult(ArrayList var1, boolean var2);
-
- public abstract void onCancel();
-}
diff --git a/AndroidOCRTool/app/src/main/java/com/xuexiang/templateproject/utils/service/OcrPhotos.java b/AndroidOCRTool/app/src/main/java/com/xuexiang/templateproject/utils/service/OcrPhotos.java
deleted file mode 100644
index b685603..0000000
--- a/AndroidOCRTool/app/src/main/java/com/xuexiang/templateproject/utils/service/OcrPhotos.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Copyright (C) 2024 xuexiangjys(xuexiangjys@163.com)
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package com.xuexiang.templateproject.utils.service;
-
-import android.app.Activity;
-import android.app.Fragment;
-
-import com.huantansheng.easyphotos.EasyPhotos;
-import com.huantansheng.easyphotos.callback.SelectCallback;
-import com.huantansheng.easyphotos.models.album.entity.Photo;
-
-import java.util.ArrayList;
-
-public class OcrPhotos {
-
- public static void createAlbum(Activity activity, OcrCallback ocrCallback) {
- EasyPhotos.createAlbum(activity, true, false, GlideEngine.getInstance())
- .setFileProviderAuthority("com.huantansheng.easyphotos.demo.fileprovider")
- .setCount(1)
- .start(new SelectCallback() {
- @Override
- public void onResult(ArrayList arrayList, boolean b) {
- //
- ocrCallback.onResult(arrayList, b);
- }
-
- @Override
- public void onCancel() {
-
- }
- });
-
- }
-
-
- public static void createAlbum(Fragment fragment, OcrCallback ocrCallback) {
- EasyPhotos.createAlbum(fragment, true, false, GlideEngine.getInstance())
- .setFileProviderAuthority("com.huantansheng.easyphotos.demo.fileprovider")
- .setCount(1)
- .start(new SelectCallback() {
- @Override
- public void onResult(ArrayList arrayList, boolean b) {
- //
- ocrCallback.onResult(arrayList, b);
- }
-
- @Override
- public void onCancel() {
-
- }
- });
- }
-}
diff --git a/AndroidOCRTool/app/src/main/res/color/selector_round_button_main_theme_color.xml b/AndroidOCRTool/app/src/main/res/color/selector_round_button_main_theme_color.xml
deleted file mode 100644
index 16fd2c7..0000000
--- a/AndroidOCRTool/app/src/main/res/color/selector_round_button_main_theme_color.xml
+++ /dev/null
@@ -1,24 +0,0 @@
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/AndroidOCRTool/app/src/main/res/drawable-hdpi/ic_comment.png b/AndroidOCRTool/app/src/main/res/drawable-hdpi/ic_comment.png
deleted file mode 100644
index dec6ff4..0000000
Binary files a/AndroidOCRTool/app/src/main/res/drawable-hdpi/ic_comment.png and /dev/null differ
diff --git a/AndroidOCRTool/app/src/main/res/drawable-hdpi/ic_praise.png b/AndroidOCRTool/app/src/main/res/drawable-hdpi/ic_praise.png
deleted file mode 100644
index 64021e2..0000000
Binary files a/AndroidOCRTool/app/src/main/res/drawable-hdpi/ic_praise.png and /dev/null differ
diff --git a/AndroidOCRTool/app/src/main/res/drawable-hdpi/ic_splash_app_logo_xui.png b/AndroidOCRTool/app/src/main/res/drawable-hdpi/ic_splash_app_logo_xui.png
deleted file mode 100644
index 1f5c884..0000000
Binary files a/AndroidOCRTool/app/src/main/res/drawable-hdpi/ic_splash_app_logo_xui.png and /dev/null differ
diff --git a/AndroidOCRTool/app/src/main/res/drawable-hdpi/ic_splash_company_logo.png b/AndroidOCRTool/app/src/main/res/drawable-hdpi/ic_splash_company_logo.png
deleted file mode 100644
index 7d8654d..0000000
Binary files a/AndroidOCRTool/app/src/main/res/drawable-hdpi/ic_splash_company_logo.png and /dev/null differ
diff --git a/AndroidOCRTool/app/src/main/res/drawable-v17/xui_config_bg_splash.xml b/AndroidOCRTool/app/src/main/res/drawable-v17/xui_config_bg_splash.xml
deleted file mode 100644
index afbab81..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable-v17/xui_config_bg_splash.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
- -
-
-
-
- -
-
-
-
\ No newline at end of file
diff --git a/AndroidOCRTool/app/src/main/res/drawable-v21/xui_config_bg_splash.xml b/AndroidOCRTool/app/src/main/res/drawable-v21/xui_config_bg_splash.xml
deleted file mode 100644
index f502f5d..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable-v21/xui_config_bg_splash.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
- -
-
-
-
- -
-
-
-
\ No newline at end of file
diff --git a/AndroidOCRTool/app/src/main/res/drawable-v24/ic_launcher_foreground.xml b/AndroidOCRTool/app/src/main/res/drawable-v24/ic_launcher_foreground.xml
deleted file mode 100644
index 1f6bb29..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable-v24/ic_launcher_foreground.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable-xxxhdpi/ic_web_back.png b/AndroidOCRTool/app/src/main/res/drawable-xxxhdpi/ic_web_back.png
deleted file mode 100644
index 8bb3cf8..0000000
Binary files a/AndroidOCRTool/app/src/main/res/drawable-xxxhdpi/ic_web_back.png and /dev/null differ
diff --git a/AndroidOCRTool/app/src/main/res/drawable-xxxhdpi/ic_web_close.png b/AndroidOCRTool/app/src/main/res/drawable-xxxhdpi/ic_web_close.png
deleted file mode 100644
index 58a7036..0000000
Binary files a/AndroidOCRTool/app/src/main/res/drawable-xxxhdpi/ic_web_close.png and /dev/null differ
diff --git a/AndroidOCRTool/app/src/main/res/drawable-xxxhdpi/ic_web_more.png b/AndroidOCRTool/app/src/main/res/drawable-xxxhdpi/ic_web_more.png
deleted file mode 100644
index 6ecc004..0000000
Binary files a/AndroidOCRTool/app/src/main/res/drawable-xxxhdpi/ic_web_more.png and /dev/null differ
diff --git a/AndroidOCRTool/app/src/main/res/drawable/bg_dialog_common_tip_corner_white.xml b/AndroidOCRTool/app/src/main/res/drawable/bg_dialog_common_tip_corner_white.xml
deleted file mode 100644
index dbcadad..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/bg_dialog_common_tip_corner_white.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_action_close_white.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_action_close_white.xml
deleted file mode 100644
index 266e01f..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_action_close_white.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_default_head.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_default_head.xml
deleted file mode 100644
index f68423e..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_default_head.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_launcher_background.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_launcher_background.xml
deleted file mode 100644
index 0d025f9..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_launcher_background.xml
+++ /dev/null
@@ -1,170 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_login_close.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_login_close.xml
deleted file mode 100644
index 178ac09..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_login_close.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_logo_app.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_logo_app.xml
deleted file mode 100644
index dee15c4..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_logo_app.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_about.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_menu_about.xml
deleted file mode 100644
index 1f7d30f..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_about.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_about_white.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_menu_about_white.xml
deleted file mode 100644
index f8b3e1e..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_about_white.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_issues.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_menu_issues.xml
deleted file mode 100644
index 1614cdb..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_issues.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_news.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_menu_news.xml
deleted file mode 100644
index 9a7ddff..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_news.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_notifications.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_menu_notifications.xml
deleted file mode 100644
index 9c92f09..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_notifications.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_person.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_menu_person.xml
deleted file mode 100644
index 3bd07cf..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_person.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_privacy.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_menu_privacy.xml
deleted file mode 100644
index 9184e2e..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_privacy.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_search.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_menu_search.xml
deleted file mode 100644
index 9dba080..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_search.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_settings.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_menu_settings.xml
deleted file mode 100644
index ee77a3e..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_settings.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_star.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_menu_star.xml
deleted file mode 100644
index e7b7c61..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_star.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_trending.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_menu_trending.xml
deleted file mode 100644
index df83f28..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_menu_trending.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_password.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_password.xml
deleted file mode 100644
index 716e402..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_password.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/ic_phone.xml b/AndroidOCRTool/app/src/main/res/drawable/ic_phone.xml
deleted file mode 100644
index 56cf551..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/ic_phone.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/icon_arrow_right_grey.xml b/AndroidOCRTool/app/src/main/res/drawable/icon_arrow_right_grey.xml
deleted file mode 100644
index 964e9b2..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/icon_arrow_right_grey.xml
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/drawable/img_guide_tip_top.xml b/AndroidOCRTool/app/src/main/res/drawable/img_guide_tip_top.xml
deleted file mode 100644
index 6c787f8..0000000
--- a/AndroidOCRTool/app/src/main/res/drawable/img_guide_tip_top.xml
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/layout/activity_main.xml b/AndroidOCRTool/app/src/main/res/layout/activity_main.xml
deleted file mode 100644
index 4021006..0000000
--- a/AndroidOCRTool/app/src/main/res/layout/activity_main.xml
+++ /dev/null
@@ -1,42 +0,0 @@
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/AndroidOCRTool/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/AndroidOCRTool/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
deleted file mode 100644
index eca70cf..0000000
--- a/AndroidOCRTool/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
-
-
\ No newline at end of file
diff --git a/AndroidOCRTool/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/AndroidOCRTool/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
deleted file mode 100644
index eca70cf..0000000
--- a/AndroidOCRTool/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-
-
-
-
-
\ No newline at end of file
diff --git a/AndroidOCRTool/app/src/main/res/mipmap-hdpi/ic_launcher.png b/AndroidOCRTool/app/src/main/res/mipmap-hdpi/ic_launcher.png
deleted file mode 100644
index 898f3ed..0000000
Binary files a/AndroidOCRTool/app/src/main/res/mipmap-hdpi/ic_launcher.png and /dev/null differ
diff --git a/AndroidOCRTool/app/src/main/res/mipmap-hdpi/ic_launcher_round.png b/AndroidOCRTool/app/src/main/res/mipmap-hdpi/ic_launcher_round.png
deleted file mode 100644
index dffca36..0000000
Binary files a/AndroidOCRTool/app/src/main/res/mipmap-hdpi/ic_launcher_round.png and /dev/null differ
diff --git a/AndroidOCRTool/app/src/main/res/mipmap-mdpi/ic_launcher.png b/AndroidOCRTool/app/src/main/res/mipmap-mdpi/ic_launcher.png
deleted file mode 100644
index 64ba76f..0000000
Binary files a/AndroidOCRTool/app/src/main/res/mipmap-mdpi/ic_launcher.png and /dev/null differ
diff --git a/AndroidOCRTool/app/src/main/res/mipmap-mdpi/ic_launcher_round.png b/AndroidOCRTool/app/src/main/res/mipmap-mdpi/ic_launcher_round.png
deleted file mode 100644
index dae5e08..0000000
Binary files a/AndroidOCRTool/app/src/main/res/mipmap-mdpi/ic_launcher_round.png and /dev/null differ
diff --git a/AndroidOCRTool/app/src/main/res/mipmap-xhdpi/ic_launcher.png b/AndroidOCRTool/app/src/main/res/mipmap-xhdpi/ic_launcher.png
deleted file mode 100644
index e5ed465..0000000
Binary files a/AndroidOCRTool/app/src/main/res/mipmap-xhdpi/ic_launcher.png and /dev/null differ
diff --git a/AndroidOCRTool/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png b/AndroidOCRTool/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png
deleted file mode 100644
index 14ed0af..0000000
Binary files a/AndroidOCRTool/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png and /dev/null differ
diff --git a/AndroidOCRTool/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/AndroidOCRTool/app/src/main/res/mipmap-xxhdpi/ic_launcher.png
deleted file mode 100644
index b0907ca..0000000
Binary files a/AndroidOCRTool/app/src/main/res/mipmap-xxhdpi/ic_launcher.png and /dev/null differ
diff --git a/AndroidOCRTool/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png b/AndroidOCRTool/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png
deleted file mode 100644
index d8ae031..0000000
Binary files a/AndroidOCRTool/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png and /dev/null differ
diff --git a/AndroidOCRTool/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/AndroidOCRTool/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png
deleted file mode 100644
index 2c18de9..0000000
Binary files a/AndroidOCRTool/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png and /dev/null differ
diff --git a/AndroidOCRTool/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png b/AndroidOCRTool/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png
deleted file mode 100644
index beed3cd..0000000
Binary files a/AndroidOCRTool/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png and /dev/null differ
diff --git a/AndroidOCRTool/app/src/main/res/values/colors.xml b/AndroidOCRTool/app/src/main/res/values/colors.xml
deleted file mode 100644
index 0e3e696..0000000
--- a/AndroidOCRTool/app/src/main/res/values/colors.xml
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
- #299EE3
- #299EE3
- #299EE3
-
- #FFF1F1F1
-
-
-
- @color/colorAccent
- #388E3C
- #353A3E
-
- #EF5362
- #FE6D4B
- #FFCF47
- #9FD661
- #3FD0AD
- #2BBDF3
- #5A9AEF
- #AC8FEF
- #EE85C1
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/values/dimens.xml b/AndroidOCRTool/app/src/main/res/values/dimens.xml
deleted file mode 100644
index 27d236d..0000000
--- a/AndroidOCRTool/app/src/main/res/values/dimens.xml
+++ /dev/null
@@ -1,31 +0,0 @@
-
-
- 24dp
-
- 4dp
- 5dp
- 6dp
- 8dp
- 10dp
- 12dp
- 14dp
- 16dp
- 18dp
- 20dp
- 24dp
- 30dp
-
- 4dp
- 5dp
- 6dp
- 8dp
- 10dp
- 12dp
- 14dp
- 16dp
- 18dp
- 20dp
- 24dp
- 30dp
-
-
\ No newline at end of file
diff --git a/AndroidOCRTool/app/src/main/res/values/strings.xml b/AndroidOCRTool/app/src/main/res/values/strings.xml
deleted file mode 100644
index 38f08fa..0000000
--- a/AndroidOCRTool/app/src/main/res/values/strings.xml
+++ /dev/null
@@ -1,80 +0,0 @@
-
- TemplateAppProject
- 通用浏览器
-
- Open navigation drawer
- Close navigation drawer
-
- 动态
- 趋势
- 我的
-
- 通知
- 问题
- 收藏
- 搜索
- 设置
- 关于
-
- © %1$s xuexiangjys All rights reserved.
- 访问官网
- 联系作者
- 捐赠作者
- QQ交流群
- https://github.com/xuexiangjys/TemplateAppProject
- https://gitee.com/xuexiangjys/xuexiangjys
- https://gitee.com/xuexiangjys/Resource/blob/master/doc/sponsor.md
- http://qm.qq.com/cgi-bin/qm/qr?k=tiP-E6rDf0y77PRNfp2lNVcc9RsglPCM
-
- 是
- 否
- 是否允许页面打开第三方应用?
-
-
- 退出应用
- 同意
- 不同意
- 再次查看
- 仍不同意
- 温馨提示
- 要不要再想想
- 我们非常重视对你个人信息的保护,承诺严格按照《%s隐私权政策》保护及处理你的信息。如果你不同意该政策,很遗憾我们将无法为你提供服务
- 《%s隐私权政策》
-
-
- 登录/注册
- 获取验证码
- 登录
- 验证码登录
- 注册
- 忘记密码?
- 验证码登录
- 密码登录
- 请输入手机号码
- 手机号码
- 密码
- 旧密码
- 请输入验证码
- 验证码
- 密码必须是8~18位字母和数字的组合!
- 新密码必须是8~18位字母和数字的组合!
- 无效的手机号!
- ^((13[0-9])|(14[5,7])|(15[0-3,5-9])|(16[6])|(17[0,1,3,5-8])|(18[0-9])|(19[8,9]))\\d{8}$
- 请输入4位数验证码
- ^\\d{4}$
- ^(?:(?=.*[a-zA-Z])(?=.*[0-9])).{8,18}$
- 重置密码
- 点击注册即表示同意
- ]]>
- 是否确认退出账号?
- 用户协议
- 隐私政策
- 我已阅读并同意
- 和
-
- 跳过
- 上一条
- 下一条
- 以后不再提示此类信息
- 你知道吗?
-
diff --git a/AndroidOCRTool/app/src/main/res/values/styles.xml b/AndroidOCRTool/app/src/main/res/values/styles.xml
deleted file mode 100644
index aaedae8..0000000
--- a/AndroidOCRTool/app/src/main/res/values/styles.xml
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/AndroidOCRTool/app/src/main/res/values/styles_widget.xml b/AndroidOCRTool/app/src/main/res/values/styles_widget.xml
deleted file mode 100644
index c90aa93..0000000
--- a/AndroidOCRTool/app/src/main/res/values/styles_widget.xml
+++ /dev/null
@@ -1,102 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/AndroidOCRTool/app/src/main/res/xml/network_security_config.xml b/AndroidOCRTool/app/src/main/res/xml/network_security_config.xml
deleted file mode 100644
index da03785..0000000
--- a/AndroidOCRTool/app/src/main/res/xml/network_security_config.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
\ No newline at end of file
diff --git a/AndroidOCRTool/app/x-library.gradle b/AndroidOCRTool/app/x-library.gradle
deleted file mode 100644
index 4dae7c6..0000000
--- a/AndroidOCRTool/app/x-library.gradle
+++ /dev/null
@@ -1,48 +0,0 @@
-apply plugin: 'com.xuexiang.xaop' //引用XAOP插件
-apply plugin: 'com.xuexiang.xrouter' //引用XRouter-plugin插件实现自动注册
-
-//自动添加依赖
-configurations.each { configuration ->
- def dependencies = getProject().dependencies
- if (configuration.name == "implementation") {
- //为Project加入X-Library依赖
- //XUI框架
- configuration.dependencies.add(dependencies.create(deps.xlibrary.xui))
- configuration.dependencies.add(dependencies.create(deps.androidx.appcompat))
- configuration.dependencies.add(dependencies.create(deps.androidx.recyclerview))
- configuration.dependencies.add(dependencies.create(deps.androidx.design))
- configuration.dependencies.add(dependencies.create(deps.glide))
- //XUtil工具类
- configuration.dependencies.add(dependencies.create(deps.xlibrary.xutil_core))
- //XAOP切片
- configuration.dependencies.add(dependencies.create(deps.xlibrary.xaop_runtime))
- //XUpdate版本更新
- configuration.dependencies.add(dependencies.create(deps.xlibrary.xupdate))
- //XHttp2
- configuration.dependencies.add(dependencies.create(deps.xlibrary.xhttp2))
- configuration.dependencies.add(dependencies.create(deps.rxjava2))
- configuration.dependencies.add(dependencies.create(deps.rxandroid))
- configuration.dependencies.add(dependencies.create(deps.okhttp3))
- configuration.dependencies.add(dependencies.create(deps.gson))
- //XPage
- configuration.dependencies.add(dependencies.create(deps.xlibrary.xpage_lib))
- //页面路由
- configuration.dependencies.add(dependencies.create(deps.xlibrary.xrouter_runtime))
- }
-
- if (configuration.name == "annotationProcessor") {
- //XPage
- configuration.dependencies.add(dependencies.create(deps.xlibrary.xpage_compiler))
- //页面路由
- configuration.dependencies.add(dependencies.create(deps.xlibrary.xrouter_compiler))
- }
-
- if (configuration.name == "debugImplementation") {
- //内存泄漏监测leak
- configuration.dependencies.add(dependencies.create(deps.leakcanary))
- }
-}
-
-configurations.all {
- resolutionStrategy.force deps.okhttp3
-}
\ No newline at end of file
diff --git a/AndroidOCRTool/build.gradle b/AndroidOCRTool/build.gradle
deleted file mode 100644
index c4391db..0000000
--- a/AndroidOCRTool/build.gradle
+++ /dev/null
@@ -1,29 +0,0 @@
-// Top-level build file where you can add configuration options common to all sub-projects/modules.
-
-buildscript {
- apply from: './versions.gradle'
- addRepos(repositories) //增加代码仓库
- dependencies {
- classpath deps.android_gradle_plugin
- classpath deps.android_maven_gradle_plugin
-
- classpath 'com.chenenyu:img-optimizer:1.2.0' // 图片压缩
- //美团多渠道打包
- classpath 'com.meituan.android.walle:plugin:1.1.6'
- //滴滴的质量优化框架
- if (isNeedPackage.toBoolean() && isUseBooster.toBoolean()) {
- classpath deps.booster.gradle_plugin
- classpath deps.booster.task_processed_res
- classpath deps.booster.task_resource_deredundancy
- }
- }
-}
-
-allprojects {
- addRepos(repositories)
-}
-
-task clean(type: Delete) {
- delete rootProject.buildDir
-}
-
diff --git a/AndroidOCRTool/gradle.properties b/AndroidOCRTool/gradle.properties
deleted file mode 100644
index 5d43612..0000000
--- a/AndroidOCRTool/gradle.properties
+++ /dev/null
@@ -1,24 +0,0 @@
-# Project-wide Gradle settings.
-# IDE (e.g. Android Studio) users:
-# Gradle settings configured through the IDE *will override*
-# any settings specified in this file.
-# For more details on how to configure your build environment visit
-# http://www.gradle.org/docs/current/userguide/build_environment.html
-# Specifies the JVM arguments used for the daemon process.
-# The setting is particularly useful for tweaking memory settings.
-org.gradle.jvmargs=-Xmx1536m
-# When configured, Gradle will run in incubating parallel mode.
-# This option should only be used with decoupled projects. More details, visit
-# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
-# org.gradle.parallel=true
-
-# 是否打包APK,打正式包时请设置为true,使用正式的签名
-isNeedPackage=false
-# 是否使用booster优化APK,这里需要注意gradle的版本,对于最新的gradle版本可能存在兼容问题
-isUseBooster=false
-android.precompileDependenciesResources=false
-
-android.useAndroidX=true
-android.enableJetifier=true
-
-android.enableD8=true
diff --git a/AndroidOCRTool/gradle/wrapper/gradle-wrapper.jar b/AndroidOCRTool/gradle/wrapper/gradle-wrapper.jar
deleted file mode 100644
index f6b961f..0000000
Binary files a/AndroidOCRTool/gradle/wrapper/gradle-wrapper.jar and /dev/null differ
diff --git a/AndroidOCRTool/gradle/wrapper/gradle-wrapper.properties b/AndroidOCRTool/gradle/wrapper/gradle-wrapper.properties
deleted file mode 100644
index df6e363..0000000
--- a/AndroidOCRTool/gradle/wrapper/gradle-wrapper.properties
+++ /dev/null
@@ -1,6 +0,0 @@
-#Sun Apr 28 13:11:59 CST 2024
-distributionBase=GRADLE_USER_HOME
-distributionPath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-6.6.1-bin.zip
-zipStoreBase=GRADLE_USER_HOME
-zipStorePath=wrapper/dists
diff --git a/AndroidOCRTool/gradlew b/AndroidOCRTool/gradlew
deleted file mode 100755
index cccdd3d..0000000
--- a/AndroidOCRTool/gradlew
+++ /dev/null
@@ -1,172 +0,0 @@
-#!/usr/bin/env sh
-
-##############################################################################
-##
-## Gradle start up script for UN*X
-##
-##############################################################################
-
-# Attempt to set APP_HOME
-# Resolve links: $0 may be a link
-PRG="$0"
-# Need this for relative symlinks.
-while [ -h "$PRG" ] ; do
- ls=`ls -ld "$PRG"`
- link=`expr "$ls" : '.*-> \(.*\)$'`
- if expr "$link" : '/.*' > /dev/null; then
- PRG="$link"
- else
- PRG=`dirname "$PRG"`"/$link"
- fi
-done
-SAVED="`pwd`"
-cd "`dirname \"$PRG\"`/" >/dev/null
-APP_HOME="`pwd -P`"
-cd "$SAVED" >/dev/null
-
-APP_NAME="Gradle"
-APP_BASE_NAME=`basename "$0"`
-
-# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-DEFAULT_JVM_OPTS=""
-
-# Use the maximum available, or set MAX_FD != -1 to use that value.
-MAX_FD="maximum"
-
-warn () {
- echo "$*"
-}
-
-die () {
- echo
- echo "$*"
- echo
- exit 1
-}
-
-# OS specific support (must be 'true' or 'false').
-cygwin=false
-msys=false
-darwin=false
-nonstop=false
-case "`uname`" in
- CYGWIN* )
- cygwin=true
- ;;
- Darwin* )
- darwin=true
- ;;
- MINGW* )
- msys=true
- ;;
- NONSTOP* )
- nonstop=true
- ;;
-esac
-
-CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
-
-# Determine the Java command to use to start the JVM.
-if [ -n "$JAVA_HOME" ] ; then
- if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
- # IBM's JDK on AIX uses strange locations for the executables
- JAVACMD="$JAVA_HOME/jre/sh/java"
- else
- JAVACMD="$JAVA_HOME/bin/java"
- fi
- if [ ! -x "$JAVACMD" ] ; then
- die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
-
-Please set the JAVA_HOME variable in your environment to match the
-location of your Java installation."
- fi
-else
- JAVACMD="java"
- which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-
-Please set the JAVA_HOME variable in your environment to match the
-location of your Java installation."
-fi
-
-# Increase the maximum file descriptors if we can.
-if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
- MAX_FD_LIMIT=`ulimit -H -n`
- if [ $? -eq 0 ] ; then
- if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
- MAX_FD="$MAX_FD_LIMIT"
- fi
- ulimit -n $MAX_FD
- if [ $? -ne 0 ] ; then
- warn "Could not set maximum file descriptor limit: $MAX_FD"
- fi
- else
- warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
- fi
-fi
-
-# For Darwin, add options to specify how the application appears in the dock
-if $darwin; then
- GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
-fi
-
-# For Cygwin, switch paths to Windows format before running java
-if $cygwin ; then
- APP_HOME=`cygpath --path --mixed "$APP_HOME"`
- CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
- JAVACMD=`cygpath --unix "$JAVACMD"`
-
- # We build the pattern for arguments to be converted via cygpath
- ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
- SEP=""
- for dir in $ROOTDIRSRAW ; do
- ROOTDIRS="$ROOTDIRS$SEP$dir"
- SEP="|"
- done
- OURCYGPATTERN="(^($ROOTDIRS))"
- # Add a user-defined pattern to the cygpath arguments
- if [ "$GRADLE_CYGPATTERN" != "" ] ; then
- OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
- fi
- # Now convert the arguments - kludge to limit ourselves to /bin/sh
- i=0
- for arg in "$@" ; do
- CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
- CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
-
- if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
- eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
- else
- eval `echo args$i`="\"$arg\""
- fi
- i=$((i+1))
- done
- case $i in
- (0) set -- ;;
- (1) set -- "$args0" ;;
- (2) set -- "$args0" "$args1" ;;
- (3) set -- "$args0" "$args1" "$args2" ;;
- (4) set -- "$args0" "$args1" "$args2" "$args3" ;;
- (5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
- (6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
- (7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
- (8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
- (9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
- esac
-fi
-
-# Escape application args
-save () {
- for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
- echo " "
-}
-APP_ARGS=$(save "$@")
-
-# Collect all arguments for the java command, following the shell quoting and substitution rules
-eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
-
-# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong
-if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then
- cd "$(dirname "$0")"
-fi
-
-exec "$JAVACMD" "$@"
diff --git a/AndroidOCRTool/gradlew.bat b/AndroidOCRTool/gradlew.bat
deleted file mode 100644
index f955316..0000000
--- a/AndroidOCRTool/gradlew.bat
+++ /dev/null
@@ -1,84 +0,0 @@
-@if "%DEBUG%" == "" @echo off
-@rem ##########################################################################
-@rem
-@rem Gradle startup script for Windows
-@rem
-@rem ##########################################################################
-
-@rem Set local scope for the variables with windows NT shell
-if "%OS%"=="Windows_NT" setlocal
-
-set DIRNAME=%~dp0
-if "%DIRNAME%" == "" set DIRNAME=.
-set APP_BASE_NAME=%~n0
-set APP_HOME=%DIRNAME%
-
-@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
-set DEFAULT_JVM_OPTS=
-
-@rem Find java.exe
-if defined JAVA_HOME goto findJavaFromJavaHome
-
-set JAVA_EXE=java.exe
-%JAVA_EXE% -version >NUL 2>&1
-if "%ERRORLEVEL%" == "0" goto init
-
-echo.
-echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:findJavaFromJavaHome
-set JAVA_HOME=%JAVA_HOME:"=%
-set JAVA_EXE=%JAVA_HOME%/bin/java.exe
-
-if exist "%JAVA_EXE%" goto init
-
-echo.
-echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
-echo.
-echo Please set the JAVA_HOME variable in your environment to match the
-echo location of your Java installation.
-
-goto fail
-
-:init
-@rem Get command-line arguments, handling Windows variants
-
-if not "%OS%" == "Windows_NT" goto win9xME_args
-
-:win9xME_args
-@rem Slurp the command line arguments.
-set CMD_LINE_ARGS=
-set _SKIP=2
-
-:win9xME_args_slurp
-if "x%~1" == "x" goto execute
-
-set CMD_LINE_ARGS=%*
-
-:execute
-@rem Setup the command line
-
-set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
-
-@rem Execute Gradle
-"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS%
-
-:end
-@rem End local scope for the variables with windows NT shell
-if "%ERRORLEVEL%"=="0" goto mainEnd
-
-:fail
-rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
-rem the _cmd.exe /c_ return code!
-if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
-exit /b 1
-
-:mainEnd
-if "%OS%"=="Windows_NT" endlocal
-
-:omega
diff --git a/AndroidOCRTool/local.properties b/AndroidOCRTool/local.properties
deleted file mode 100644
index d594a63..0000000
--- a/AndroidOCRTool/local.properties
+++ /dev/null
@@ -1,8 +0,0 @@
-## This file must *NOT* be checked into Version Control Systems,
-# as it contains information specific to your local configuration.
-#
-# Location of the SDK. This is only used by Gradle.
-# For customization when using a Version Control System, please read the
-# header note.
-#Mon May 06 15:47:45 CST 2024
-sdk.dir=/Users/wangvivi/Library/Android/sdk
diff --git a/AndroidOCRTool/settings.gradle b/AndroidOCRTool/settings.gradle
deleted file mode 100644
index e7b4def..0000000
--- a/AndroidOCRTool/settings.gradle
+++ /dev/null
@@ -1 +0,0 @@
-include ':app'
diff --git a/AndroidOCRTool/versions.gradle b/AndroidOCRTool/versions.gradle
deleted file mode 100644
index 071f6c5..0000000
--- a/AndroidOCRTool/versions.gradle
+++ /dev/null
@@ -1,209 +0,0 @@
-import java.util.regex.Matcher
-import java.util.regex.Pattern
-
-ext.deps = [:]
-def versions = [:]
-versions.android_gradle_plugin = "4.1.0"
-versions.android_maven_gradle_plugin = "2.0"
-versions.gradle_bintray_plugin = "1.8.0"
-versions.booster = "3.1.0"
-versions.booster_all = "1.1.1"
-versions.support = "28.0.0"
-versions.annotation = "1.2.0"
-versions.androidx = "1.3.1"
-versions.recyclerview = "1.2.1"
-versions.material = "1.4.0"
-versions.junit = "4.12"
-versions.espresso = "3.2.0"
-versions.constraint_layout = "2.1.0"
-versions.glide = "4.11.0"
-versions.rxjava2 = "2.2.20"
-versions.rxandroid = "2.1.1"
-versions.rxbinding = "2.2.0"
-versions.butterknife = "10.1.0"
-versions.runner = "1.2.0"
-versions.gson = "2.8.5"
-versions.okhttp3 = "3.12.12"
-versions.leakcanary = "2.6"
-
-//========xlibrary start========//
-
-versions.xui = "1.2.0"
-versions.xupdate = "2.1.3"
-versions.xaop = "1.1.0"
-versions.xutil = "2.0.0"
-versions.xhttp2 = "2.0.4"
-versions.xpage = "3.4.0"
-versions.xrouter = "1.1.0"
-
-//========xlibrary end========//
-
-def deps = [:]
-
-def support = [:]
-support.annotations = "com.android.support:support-annotations:$versions.support"
-support.app_compat = "com.android.support:appcompat-v7:$versions.support"
-support.recyclerview = "com.android.support:recyclerview-v7:$versions.support"
-support.cardview = "com.android.support:cardview-v7:$versions.support"
-support.design = "com.android.support:design:$versions.support"
-support.v4 = "com.android.support:support-v4:$versions.support"
-support.core_utils = "com.android.support:support-core-utils:$versions.support"
-deps.support = support
-
-def androidx = [:]
-androidx.annotations = "androidx.annotation:annotation:$versions.annotation"
-androidx.appcompat = "androidx.appcompat:appcompat:$versions.androidx"
-androidx.recyclerview = "androidx.recyclerview:recyclerview:$versions.recyclerview"
-androidx.design = "com.google.android.material:material:$versions.material"
-androidx.multidex = 'androidx.multidex:multidex:2.0.1'
-deps.androidx = androidx
-
-def booster = [:]
-booster.gradle_plugin = "com.didiglobal.booster:booster-gradle-plugin:$versions.booster"
-booster.task_all = "com.didiglobal.booster:booster-task-all:$versions.booster_all"
-booster.transform_all = "com.didiglobal.booster:booster-transform-all:$versions.booster_all"
-//采用 cwebp 对资源进行压缩
-booster.task_compression_cwebp = "com.didiglobal.booster:booster-task-compression-cwebp:$versions.booster"
-//采用 pngquant 对资源进行压缩
-booster.task_compression_pngquant = "com.didiglobal.booster:booster-task-compression-pngquant:$versions.booster"
-//ap_ 文件压缩
-booster.task_processed_res = "com.didiglobal.booster:booster-task-compression-processed-res:$versions.booster"
-//去冗余资源
-booster.task_resource_deredundancy = "com.didiglobal.booster:booster-task-resource-deredundancy:$versions.booster"
-//检查 SNAPSHOT 版本
-booster.task_check_snapshot = "com.didiglobal.booster:booster-task-check-snapshot:$versions.booster"
-//性能瓶颈检测
-booster.transform_lint = "com.didiglobal.booster:booster-transform-lint:$versions.booster"
-//多线程优化
-booster.transform_thread = "com.didiglobal.booster:booster-transform-thread:$versions.booster"
-//资源索引内联
-booster.transform_r_inline = "com.didiglobal.booster:booster-transform-r-inline:$versions.booster"
-//WebView 预加载
-booster.transform_webview = "com.didiglobal.booster:booster-transform-webview:$versions.booster"
-//SharedPreferences 优化
-booster.transform_shared_preferences = "com.didiglobal.booster:booster-transform-shared-preferences:$versions.booster"
-//检查覆盖安装导致的 Resources 和 Assets 未加载的 Bug
-booster.transform_res_check = "com.didiglobal.booster:booster-transform-res-check:$versions.booster"
-//修复 Toast 在 Android 7.1 上的 Bug
-booster.transform_toast = "com.didiglobal.booster:booster-transform-toast:$versions.booster"
-//处理系统 Crash
-booster.transform_activity_thread = "com.didiglobal.booster:booster-transform-activity-thread:$versions.booster"
-deps.booster = booster
-
-def butterknife = [:]
-butterknife.runtime = "com.jakewharton:butterknife:$versions.butterknife"
-butterknife.compiler = "com.jakewharton:butterknife-compiler:$versions.butterknife"
-
-deps.butterknife = butterknife
-
-def espresso = [:]
-espresso.core = "androidx.test.espresso:espresso-core:$versions.espresso"
-espresso.contrib = "androidx.test.espresso:espresso-contrib:$versions.espresso"
-espresso.intents = "androidx.test.espresso:espresso-intents:$versions.espresso"
-deps.espresso = espresso
-
-deps.android_gradle_plugin = "com.android.tools.build:gradle:$versions.android_gradle_plugin"
-deps.android_maven_gradle_plugin = "com.github.dcendents:android-maven-gradle-plugin:$versions.android_maven_gradle_plugin"
-deps.gradle_bintray_plugin = "com.jfrog.bintray.gradle:gradle-bintray-plugin:$versions.gradle_bintray_plugin"
-deps.glide = "com.github.bumptech.glide:glide:$versions.glide"
-deps.constraint_layout = "androidx.constraint:constraint-layout:$versions.constraint_layout"
-deps.junit = "junit:junit:$versions.junit"
-deps.runner = "androidx.test:runner:$versions.runner"
-deps.rxjava2 = "io.reactivex.rxjava2:rxjava:$versions.rxjava2"
-deps.rxandroid = "io.reactivex.rxjava2:rxandroid:$versions.rxandroid"
-deps.rxbinding = "com.jakewharton.rxbinding2:rxbinding:$versions.rxbinding"
-deps.gson = "com.google.code.gson:gson:$versions.gson"
-deps.okhttp3 = "com.squareup.okhttp3:okhttp:$versions.okhttp3"
-deps.leakcanary = "com.squareup.leakcanary:leakcanary-android:$versions.leakcanary"
-
-//========xlibrary start=================//
-
-def xlibrary = [:]
-
-xlibrary.xui = "com.github.xuexiangjys:XUI:$versions.xui"
-xlibrary.xupdate = "com.github.xuexiangjys:XUpdate:$versions.xupdate"
-xlibrary.xaop_runtime = "com.github.xuexiangjys.XAOP:xaop-runtime:$versions.xaop"
-xlibrary.xaop_plugin = "com.github.xuexiangjys.XAOP:xaop-plugin:$versions.xaop"
-xlibrary.xutil_core = "com.github.xuexiangjys.XUtil:xutil-core:$versions.xutil"
-xlibrary.xhttp2 = "com.github.xuexiangjys:XHttp2:$versions.xhttp2"
-xlibrary.xpage_lib = "com.github.xuexiangjys.XPage:xpage-lib:$versions.xpage"
-xlibrary.xpage_compiler = "com.github.xuexiangjys.XPage:xpage-compiler:$versions.xpage"
-xlibrary.xrouter_runtime = "com.github.xuexiangjys.XRouter:xrouter-runtime:$versions.xrouter"
-xlibrary.xrouter_compiler = "com.github.xuexiangjys.XRouter:xrouter-compiler:$versions.xrouter"
-xlibrary.xrouter_plugin = "com.github.xuexiangjys.XRouter:xrouter-plugin:$versions.xrouter"
-
-deps.xlibrary = xlibrary
-
-//========xlibrary end=================//
-
-ext.deps = deps
-
-def build_versions = [:]
-build_versions.min_sdk = 19
-build_versions.target_sdk = 29
-build_versions.build_tools = "29.0.3"
-ext.build_versions = build_versions
-
-def app_release = [:]
-app_release.storeFile = "../keystores/android.keystore"
-app_release.storePassword = "xuexiang"
-app_release.keyAlias = "android.keystore"
-app_release.keyPassword = "xuexiang"
-
-ext.app_release = app_release
-
-/**
- * @return 是否为release
- */
-def isRelease() {
- Gradle gradle = getGradle()
- String tskReqStr = gradle.getStartParameter().getTaskRequests().toString()
-
- Pattern pattern
- if (tskReqStr.contains("assemble")) {
- println tskReqStr
- pattern = Pattern.compile("assemble(\\w*)(Release|Debug)")
- } else {
- pattern = Pattern.compile("generate(\\w*)(Release|Debug)")
- }
- Matcher matcher = pattern.matcher(tskReqStr)
-
- if (matcher.find()) {
- String task = matcher.group(0).toLowerCase()
- println("[BuildType] Current task: " + task)
- return task.contains("release")
- } else {
- println "[BuildType] NO MATCH FOUND"
- return true
- }
-}
-
-ext.isRelease = this.&isRelease
-
-//默认添加代码仓库路径
-static def addRepos(RepositoryHandler handler) {
- handler.mavenLocal()
- handler.google { url 'https://maven.aliyun.com/repository/google' }
- handler.jcenter { url 'https://maven.aliyun.com/repository/jcenter' }
- handler.mavenCentral { url 'https://maven.aliyun.com/repository/central' }
- handler.maven { url "https://jitpack.io" }
- handler.maven { url 'https://maven.aliyun.com/repository/public' }
- handler.maven { url "https://repo1.maven.org/maven2/" }
- handler.maven { url 'https://oss.sonatype.org/content/repositories/public' }
- //Add the Local repository
- handler.maven { url 'LocalRepository' }
-}
-
-ext.addRepos = this.&addRepos
-
-
-//自动添加XAOP和XRouter插件
-project.buildscript.configurations.each { configuration ->
- def dependencies = getProject().dependencies
- if (configuration.name == "classpath") {
- //XAOP插件
- configuration.dependencies.add(dependencies.create(deps.xlibrary.xaop_plugin))
- //XRouter插件
- configuration.dependencies.add(dependencies.create(deps.xlibrary.xrouter_plugin))
- }
-}
\ No newline at end of file
diff --git a/OCRPython/document_loader/__init__.py b/OCRPython/document_loader/__init__.py
deleted file mode 100644
index 4fa421a..0000000
--- a/OCRPython/document_loader/__init__.py
+++ /dev/null
@@ -1,4 +0,0 @@
-from .imgloader import RapidOCRLoader
-from .pdfloader import RapidOCRPDFLoader
-from .ocr import get_ocr
-
diff --git a/OCRPython/document_loader/__pycache__/__init__.cpython-312.pyc b/OCRPython/document_loader/__pycache__/__init__.cpython-312.pyc
deleted file mode 100644
index bd1f3a4..0000000
Binary files a/OCRPython/document_loader/__pycache__/__init__.cpython-312.pyc and /dev/null differ
diff --git a/OCRPython/document_loader/__pycache__/__init__.cpython-39.pyc b/OCRPython/document_loader/__pycache__/__init__.cpython-39.pyc
deleted file mode 100644
index 90bc8a6..0000000
Binary files a/OCRPython/document_loader/__pycache__/__init__.cpython-39.pyc and /dev/null differ
diff --git a/OCRPython/document_loader/__pycache__/imgloader.cpython-312.pyc b/OCRPython/document_loader/__pycache__/imgloader.cpython-312.pyc
deleted file mode 100644
index 81f30f6..0000000
Binary files a/OCRPython/document_loader/__pycache__/imgloader.cpython-312.pyc and /dev/null differ
diff --git a/OCRPython/document_loader/__pycache__/imgloader.cpython-39.pyc b/OCRPython/document_loader/__pycache__/imgloader.cpython-39.pyc
deleted file mode 100644
index 7441e2c..0000000
Binary files a/OCRPython/document_loader/__pycache__/imgloader.cpython-39.pyc and /dev/null differ
diff --git a/OCRPython/document_loader/__pycache__/ocr.cpython-312.pyc b/OCRPython/document_loader/__pycache__/ocr.cpython-312.pyc
deleted file mode 100644
index c206461..0000000
Binary files a/OCRPython/document_loader/__pycache__/ocr.cpython-312.pyc and /dev/null differ
diff --git a/OCRPython/document_loader/__pycache__/ocr.cpython-39.pyc b/OCRPython/document_loader/__pycache__/ocr.cpython-39.pyc
deleted file mode 100644
index 5b92fee..0000000
Binary files a/OCRPython/document_loader/__pycache__/ocr.cpython-39.pyc and /dev/null differ
diff --git a/OCRPython/document_loader/__pycache__/pdfloader.cpython-312.pyc b/OCRPython/document_loader/__pycache__/pdfloader.cpython-312.pyc
deleted file mode 100644
index d1ac9a9..0000000
Binary files a/OCRPython/document_loader/__pycache__/pdfloader.cpython-312.pyc and /dev/null differ
diff --git a/OCRPython/document_loader/__pycache__/pdfloader.cpython-39.pyc b/OCRPython/document_loader/__pycache__/pdfloader.cpython-39.pyc
deleted file mode 100644
index 9ac09be..0000000
Binary files a/OCRPython/document_loader/__pycache__/pdfloader.cpython-39.pyc and /dev/null differ
diff --git a/OCRPython/document_loader/imgloader.py b/OCRPython/document_loader/imgloader.py
deleted file mode 100644
index 0bf6986..0000000
--- a/OCRPython/document_loader/imgloader.py
+++ /dev/null
@@ -1,49 +0,0 @@
-from abc import ABC, abstractmethod
-from typing import List
-import json
-from langchain.document_loaders.unstructured import UnstructuredFileLoader
-import re
-from document_loader.ocr import get_ocr
-
-
-class RapidOCRLoader(UnstructuredFileLoader):
- """图片的OCR识别类"""
- def _get_elements(self) -> List:
- def img2text(filepath):
- resp = ""
- ocr = get_ocr()
- result, _ = ocr(filepath)
- if result:
- ocr_result = [line[1] for line in result]
- resp += "\n".join(ocr_result)
- return resp
-
- text = img2text(self.file_path)
- from unstructured.partition.text import partition_text
- return partition_text(text=text, **self.unstructured_kwargs)
-
-
-
-
-if __name__ == "__main__":
- #loader = RapidOCRLoader(file_path="/Users/wangvivi/Desktop/Code/ocrtest/images/id_card.JPG")
- #loader = RapidOCRLoader(file_path="/Users/wangvivi/Desktop/Code/ocrtest/images/id_card.JPG")
- #loader = RapidOCRLoader(file_path="/Users/wangvivi/Desktop/Code/ocrtest/images/20230726163834.png")
- #loader = RapidOCRLoader(file_path="/Users/wangvivi/Desktop/Code/ocrtest/images/QQ截图20230726163813.png")
- loader = RapidOCRLoader(file_path="/Users/wangvivi/Desktop/Code/ocrtest/images/id_card.JPG")
- #loader = RapidOCRLoader(file_path="/Users/wangvivi/Desktop/Code/ocrtest/images/032002200511-91445598.pdf")
- #loader = RapidOCRLoader(file_path="/Users/wangvivi/Desktop/Code/ocrtest/images/fapiao.jpg")
-
- docs = loader.load()
- context = "\n".join([doc.page_content for doc in docs])
- print(context)
-
- # extractor = IdentityCardExtractor()
- # jsonString = extractor.extract_text(context)
- # print(jsonString)
- # context = remove_blank_lines(context)
- # print("*"*20)
- # print(context)
- # info = extract_id_card_info(context)
- # jsonString = json.dumps(info, ensure_ascii=False)
- # print(jsonString)
\ No newline at end of file
diff --git a/OCRPython/document_loader/ocr.py b/OCRPython/document_loader/ocr.py
deleted file mode 100644
index 0fadaee..0000000
--- a/OCRPython/document_loader/ocr.py
+++ /dev/null
@@ -1,21 +0,0 @@
-from typing import TYPE_CHECKING
-
-from configs.basic_config import logger
-
-# if TYPE_CHECKING:
-# try:
-# from rapidocr_paddle import RapidOCR
-# except ImportError:
-# from rapidocr_onnxruntime import RapidOCR
-
-
-def get_ocr(use_cuda: bool = True) -> "RapidOCR":
- try:
- from rapidocr_paddle import RapidOCR
- logger.info(f"from rapidocr_paddle import RapidOCR")
- ocr = RapidOCR(det_use_cuda=use_cuda, cls_use_cuda=use_cuda, rec_use_cuda=use_cuda)
- except ImportError:
- from rapidocr_onnxruntime import RapidOCR
- logger.info(f"from rapidocr_onnxruntime import RapidOCR")
- ocr = RapidOCR()
- return ocr
diff --git a/OCRPython/document_loader/paddleOcr.py b/OCRPython/document_loader/paddleOcr.py
deleted file mode 100644
index a4ea0a2..0000000
--- a/OCRPython/document_loader/paddleOcr.py
+++ /dev/null
@@ -1,61 +0,0 @@
-from paddleocr import PaddleOCR, draw_ocr
-import time
-
-from extractor.identitycard_extractor import IdentityCardExtractor
-
-# Paddleocr目前支持的多语言语种可以通过修改lang参数进行切换
-# 例如`ch`, `en`, `fr`, `german`, `korean`, `japan`
-
-stat_time = time.time()
-print("start.....")
-# 加载图片
-# image = cv2.imread(image_path)
-# print(image.shape)
-# # 旋转图片(如果高度大于宽度)
-# height, width = image.shape[:2]
-# if height < width:
-# # 顺时针旋转图片90度
-# image = cv2.rotate(image, cv2.ROTATE_90_CLOCKWISE)
-ocr = PaddleOCR(use_angle_cls=True, lang="ch") # need to run only once to download and load model into memory
-print("PaddleOCR end.....")
-img_path = '/Users/wangvivi/Desktop/Code/ocrtest/images/id_card.JPG'
-print(img_path)
-result = ocr.ocr(img_path, cls=False)
-print("ocr.ocr end.....")
-text = ""
-print(f"len(result): {len(result)}")
-for idx in range(len(result)):
- res = result[idx]
- for line in res:
- #tempText = (line[1][0])
- # tempText = tempText.replace("\n", "")
- # tempText = tempText.replace(" ", "")
- text += (line[1][0] + '\n')
-print(text)
-
-#text = ""
-# for idx in range(len(result)):
-# res = result[idx]
-# for line in res:
-# print(line[0][1][0])
- #text =+ '/n'.join(line)
-
-
-# if result:
-# ocr_texts = result[0][0][1][0]
-
-# end_time = time.time()
-# print(end_time - stat_time)
-
-# 显示结果
-# 如果本地没有simfang.ttf,可以在doc/fonts目录下下载
-# from PIL import Image
-
-# result = result[0]
-# image = Image.open(img_path).convert('RGB')
-# boxes = [line[0] for line in result]
-# txts = [line[1][0] for line in result]
-# scores = [line[1][1] for line in result]
-# im_show = draw_ocr(image, boxes, txts, scores, font_path='doc/fonts/simfang.ttf')
-# im_show = Image.fromarray(im_show)
-# im_show.save('result.jpg')
diff --git a/OCRPython/document_loader/pdfloader.py b/OCRPython/document_loader/pdfloader.py
deleted file mode 100644
index 4cc3419..0000000
--- a/OCRPython/document_loader/pdfloader.py
+++ /dev/null
@@ -1,75 +0,0 @@
-from typing import List
-from langchain.document_loaders.unstructured import UnstructuredFileLoader
-PDF_OCR_THRESHOLD= (0.6,0.6)
-import tqdm
-import re
-from document_loader.ocr import get_ocr
-
-class RapidOCRPDFLoader(UnstructuredFileLoader):
- def _get_elements(self) -> List:
- def pdf2text(filepath):
- import fitz # pyMuPDF里面的fitz包,不要与pip install fitz混淆
- import numpy as np
- ocr = get_ocr()
- doc = fitz.open(filepath)
- resp = ""
-
- b_unit = tqdm.tqdm(total=doc.page_count, desc="RapidOCRPDFLoader context page index: 0")
- for i, page in enumerate(doc):
- b_unit.set_description("RapidOCRPDFLoader context page index: {}".format(i))
- b_unit.refresh()
- print(f"****page:{i+1}****")
- text = page.get_text("")
- text_lines = text.strip().split("\n")
- print(f"文字内容:{text_lines}")
- #logger.debug(f"文字内容:{text_lines}")
-
- img_list = page.get_image_info(xrefs=True)
- ocr_result = []
- for img in img_list:
- if xref := img.get("xref"):
- bbox = img["bbox"]
- # 检查图片尺寸是否超过设定的阈值
- if ((bbox[2] - bbox[0]) / (page.rect.width) < PDF_OCR_THRESHOLD[0]
- or (bbox[3] - bbox[1]) / (page.rect.height) < PDF_OCR_THRESHOLD[1]):
- continue
- pix = fitz.Pixmap(doc, xref)
- img_array = np.frombuffer(pix.samples, dtype=np.uint8).reshape(pix.height, pix.width, -1)
- result, _ = ocr(img_array)
- if result:
- ocr_result = [line[1] for line in result]
- print(f"图片内容:{ocr_result}")
- #logger.debug(f"图片内容:{ocr_result}")
- #resp += "\n".join(ocr_result)
-
- if (len(ocr_result)>0):
- resp += "\n".join(ocr_result)
- else:
- if text_lines:
- # 假设页码在最后一行
- if text_lines[-1].isdigit():
- text = "\n".join(text_lines[:-1])
- #logger.debug(f"******去除了页码")
- resp += text + "\n"
-
- # 更新进度
- b_unit.update(1)
-
- resp = re.sub(r'((?