Skip to content

Commit

Permalink
修复预览页面拉伸的问题
Browse files Browse the repository at this point in the history
修复预览页面拉伸的问题
  • Loading branch information
zhuxu1 committed Mar 24, 2022
1 parent 83dde2a commit c050b3b
Show file tree
Hide file tree
Showing 4 changed files with 39 additions and 6 deletions.
31 changes: 29 additions & 2 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,11 +9,14 @@
- 二维码生成(支持是否带图标)
- 可自定义扫描界面 UI
- 支持本地二维码图片解析
- 使用com.github.Dkaishu:ZXingLib:V1.0.6版本

这是二次维护后的新库,
[点击查看原库地址](https://github.com/Dkaishu/ZXingLib.git "Dkaishu / ZXingLib")

### 更新日志
## 2022-3-24 09:58:04
修复扫描二维码时预览界面拉伸变形的问题
## 2021-4-28 10:25:16
-提升zxing版本(3.0.1→3.4.1)
-修改识别模块代码
Expand Down
4 changes: 2 additions & 2 deletions zxinglib/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ android {
defaultConfig {
minSdkVersion 14
targetSdkVersion 26
versionCode 141
versionName "1.4.1"
versionCode 142
versionName "1.4.2"

testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,7 @@ void setDesiredCameraParameters(Camera camera) {
Camera.Parameters parameters = camera.getParameters();
Log.d(TAG, "Setting preview size: " + cameraResolution);
parameters.setPreviewSize(cameraResolution.x, cameraResolution.y);
Log.d(TAG, "Screen resolution: " + screenResolution);
setFlash(parameters);
setZoom(parameters);
//setSharpness(parameters);
Expand Down Expand Up @@ -135,7 +136,8 @@ private static Point getCameraResolution(Camera.Parameters parameters, Point scr
private static Point findBestPreviewSizeValue(CharSequence previewSizeValueString, Point screenResolution) {
int bestX = 0;
int bestY = 0;
int diff = Integer.MAX_VALUE;
// int diff = Integer.MAX_VALUE;
float diff = Integer.MAX_VALUE;
for (String previewSize : COMMA_PATTERN.split(previewSizeValueString)) {

previewSize = previewSize.trim();
Expand All @@ -155,7 +157,8 @@ private static Point findBestPreviewSizeValue(CharSequence previewSizeValueStrin
continue;
}

int newDiff = Math.abs(newX - screenResolution.x) + Math.abs(newY - screenResolution.y);
// int newDiff = Math.abs(newX - screenResolution.x) + Math.abs(newY - screenResolution.y);
float newDiff = Math.abs((float) newX/newY-(float)screenResolution.x/screenResolution.y);
if (newDiff == 0) {
bestX = newX;
bestY = newY;
Expand Down

0 comments on commit c050b3b

Please sign in to comment.