|
|
@@ -23,14 +23,15 @@ import com.miekir.ocr.tool.ImageUtil;
|
|
|
import java.io.File;
|
|
|
import java.math.BigDecimal;
|
|
|
import java.util.HashMap;
|
|
|
+import java.util.List;
|
|
|
import java.util.Map;
|
|
|
|
|
|
-import id.zelory.compressor.Compressor;
|
|
|
import io.reactivex.Observable;
|
|
|
import io.reactivex.ObservableEmitter;
|
|
|
import io.reactivex.ObservableOnSubscribe;
|
|
|
import io.reactivex.android.schedulers.AndroidSchedulers;
|
|
|
import io.reactivex.schedulers.Schedulers;
|
|
|
+import top.zibin.luban.Luban;
|
|
|
|
|
|
import static android.os.Environment.DIRECTORY_PICTURES;
|
|
|
|
|
|
@@ -93,10 +94,12 @@ public class OperationPresenter extends BasePresenter<IOperationView> {
|
|
|
|
|
|
rotatedBitmap.recycle();
|
|
|
if (saveCropSuccess) {
|
|
|
- File compressedFile = new Compressor(context.getApplicationContext())
|
|
|
- .setQuality(99)
|
|
|
- .setDestinationDirectoryPath(file.getParentFile().getAbsolutePath())
|
|
|
- .compressToFile(file, "cp_" + file.getName());
|
|
|
+ List<File> fileList = Luban.with(context)
|
|
|
+ .load(file)
|
|
|
+ .ignoreBy(400)
|
|
|
+ .setTargetDir(file.getParentFile().getAbsolutePath())
|
|
|
+ .get();
|
|
|
+ File compressedFile = fileList.get(0);
|
|
|
|
|
|
//file.delete();
|
|
|
// 通知相册去获取
|
|
|
@@ -266,10 +269,13 @@ public class OperationPresenter extends BasePresenter<IOperationView> {
|
|
|
croppedBmp.recycle();
|
|
|
rotatedBitmap.recycle();
|
|
|
if (saveCropSuccess) {
|
|
|
- File compressedFile = new Compressor(context.getApplicationContext())
|
|
|
- .setQuality(90)
|
|
|
- .setDestinationDirectoryPath(file.getParentFile().getAbsolutePath())
|
|
|
- .compressToFile(file, "cp_" + file.getName());
|
|
|
+
|
|
|
+ List<File> fileList = Luban.with(context)
|
|
|
+ .load(file)
|
|
|
+ .ignoreBy(400)
|
|
|
+ .setTargetDir(file.getParentFile().getAbsolutePath())
|
|
|
+ .get();
|
|
|
+ File compressedFile = fileList.get(0);
|
|
|
|
|
|
file.delete();
|
|
|
// 通知相册去获取
|
|
|
@@ -446,14 +452,22 @@ public class OperationPresenter extends BasePresenter<IOperationView> {
|
|
|
croppedBmp.recycle();
|
|
|
rotatedBitmap.recycle();
|
|
|
if (saveCropSuccess) {
|
|
|
- File compressedFile = new Compressor(context.getApplicationContext())
|
|
|
+ /*File compressedFile = new Compressor(context.getApplicationContext())
|
|
|
.setQuality(97)
|
|
|
.setDestinationDirectoryPath(file.getParentFile().getAbsolutePath())
|
|
|
- .compressToFile(file, "cp_" + file.getName());
|
|
|
+ .compressToFile(file, "cp_" + file.getName());*/
|
|
|
+
|
|
|
+ List<File> fileList = Luban.with(context)
|
|
|
+ .load(file)
|
|
|
+ .ignoreBy(400)
|
|
|
+ .setTargetDir(file.getParentFile().getAbsolutePath())
|
|
|
+ .get();
|
|
|
+ File compressedFile = fileList.get(0);
|
|
|
|
|
|
file.delete();
|
|
|
// 通知相册去获取
|
|
|
MediaScannerConnection.scanFile(context, new String[] { compressedFile.getAbsolutePath() }, new String[] { "image/jpeg" }, null);
|
|
|
+ //MediaScannerConnection.scanFile(context, new String[] { file.getAbsolutePath() }, new String[] { "image/jpeg" }, null);
|
|
|
// 保存最终截图成功
|
|
|
// 根据URI获取图片的base64字符串
|
|
|
String photoBase64 = Base64Tool.getBase64FromFilePath(compressedFile.getAbsolutePath());
|