Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
mmm-rain
AndroidUtilCode
提交
de6ae505
A
AndroidUtilCode
项目概览
mmm-rain
/
AndroidUtilCode
与 Fork 源项目一致
从无法访问的项目Fork
通知
4
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
A
AndroidUtilCode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
de6ae505
编写于
9月 08, 2016
作者:
C
cmj
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
see 09/08 log
上级
dd65d407
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
17 addition
and
29 deletion
+17
-29
utilcode/src/main/java/com/blankj/utilcode/utils/ImageUtils.java
...e/src/main/java/com/blankj/utilcode/utils/ImageUtils.java
+16
-27
utilcode/src/test/java/com/blankj/utilcode/utils/ImageUtilsTest.java
...c/test/java/com/blankj/utilcode/utils/ImageUtilsTest.java
+1
-2
utilcode/src/test/res/image/lena.png
utilcode/src/test/res/image/lena.png
+0
-0
未找到文件。
utilcode/src/main/java/com/blankj/utilcode/utils/ImageUtils.java
浏览文件 @
de6ae505
...
...
@@ -28,14 +28,15 @@ import android.renderscript.Element;
import
android.renderscript.RenderScript
;
import
android.renderscript.ScriptIntrinsicBlur
;
import
java.io.BufferedOutputStream
;
import
java.io.ByteArrayInputStream
;
import
java.io.ByteArrayOutputStream
;
import
java.io.File
;
import
java.io.FileInputStream
;
import
java.io.FileNotFoundException
;
import
java.io.FileOutputStream
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.io.OutputStream
;
/**
* <pre>
...
...
@@ -121,32 +122,25 @@ public class ImageUtils {
/**
* 根据文件路径获取bitmap
*
* @param file
Path
文件路径
* @param file 文件路径
* @return bitmap
*/
public
static
Bitmap
getBitmapByFile
(
String
filePath
)
{
return
getBitmapByFile
(
FileUtils
.
getFileByPath
(
filePath
));
public
static
Bitmap
getBitmapByFile
(
File
file
)
{
if
(
file
==
null
)
return
null
;
return
getBitmapByFile
(
file
.
getPath
());
}
/**
* 根据文件路径获取bitmap
*
* @param file 文件路径
* @param file
Path
文件路径
* @return bitmap
*/
public
static
Bitmap
getBitmapByFile
(
File
file
)
{
if
(
file
==
null
)
return
null
;
try
{
return
BitmapFactory
.
decodeStream
(
new
FileInputStream
(
file
));
}
catch
(
FileNotFoundException
e
)
{
e
.
printStackTrace
();
return
null
;
}
public
static
Bitmap
getBitmapByFile
(
String
filePath
)
{
return
BitmapFactory
.
decodeFile
(
filePath
);
}
/**
* 根据文件路径获取bitmap
*
* @param filePath 文件路径
* @return bitmap
*/
...
...
@@ -166,24 +160,19 @@ public class ImageUtils {
final
int
height
=
options
.
outHeight
;
final
int
width
=
options
.
outWidth
;
int
inSampleSize
=
1
;
if
(
height
>
reqHeight
||
width
>
reqWidth
)
{
final
int
halfHeight
=
height
/
2
;
final
int
halfWidth
=
width
/
2
;
// Calculate the largest inSampleSize value that is a power of 2 and keeps both
// height and width larger than the requested height and width.
while
((
halfHeight
/
inSampleSize
)
>
reqHeight
&&
(
halfWidth
/
inSampleSize
)
>
reqWidth
)
{
inSampleSize
*=
2
;
inSampleSize
<<=
1
;
}
}
return
inSampleSize
;
}
/**
* 缩放图片
*
...
...
@@ -735,17 +724,17 @@ public class ImageUtils {
* @return {@code true}: 成功<br>{@code false}: 失败
*/
public
static
boolean
save
(
Bitmap
src
,
File
file
,
CompressFormat
format
)
{
if
(
isEmptyBitmap
(
src
)
||
file
==
null
)
return
false
;
System
.
out
.
println
(
src
.
getWidth
()
+
","
+
src
.
getHeight
());
FileOutputStream
f
os
=
null
;
if
(
isEmptyBitmap
(
src
)
||
!
FileUtils
.
createOrExistsFile
(
file
)
)
return
false
;
System
.
out
.
println
(
src
.
getWidth
()
+
",
"
+
src
.
getHeight
());
OutputStream
os
=
null
;
try
{
fos
=
new
FileOutputStream
(
file
);
return
src
.
compress
(
format
,
100
,
f
os
);
os
=
new
BufferedOutputStream
(
new
FileOutputStream
(
file
)
);
return
src
.
compress
(
format
,
100
,
os
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
return
false
;
}
finally
{
FileUtils
.
closeIO
(
f
os
);
FileUtils
.
closeIO
(
os
);
}
}
...
...
utilcode/src/test/java/com/blankj/utilcode/utils/ImageUtilsTest.java
浏览文件 @
de6ae505
...
...
@@ -26,9 +26,8 @@ public class ImageUtilsTest {
@Test
public
void
testBitmap2Bytes
()
throws
Exception
{
FileUtils
.
createOrExistsFile
(
path
+
"new1.png"
);
Bitmap
bitmap
=
ImageUtils
.
getBitmapByFile
(
path
+
"lena.png"
);
System
.
out
.
println
(
ImageUtils
.
save
(
bitmap
,
path
+
"new
1
.png"
,
Bitmap
.
CompressFormat
.
PNG
));
System
.
out
.
println
(
ImageUtils
.
save
(
bitmap
,
path
+
"new.png"
,
Bitmap
.
CompressFormat
.
PNG
));
}
@Test
...
...
utilcode/src/test/res/image/lena.png
查看替换文件 @
dd65d407
浏览文件 @
de6ae505
316.3 KB
|
W:
|
H:
107.4 KB
|
W:
|
H:
2-up
Swipe
Onion skin
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录