当前位置:编程学习 > wap >>

Andrid Skia EncodeFile 背景为黑色

求助:我将Android.png读入SkBitmap bp,然后将bp 存成 new.jpg。图片显示是正常的,但是,如下图所示,为什么new.jpg背景是黑色的?如何能够改变它的背景颜色?
另外:如何通过Skia将图片的数据存入二进制的Buffer中?然后,再如何将二进制格式的数据转换成图片格式保存?(图片格式是jpg,png 及bmp)需要实现这个功能,不知道有哪些方法?忘各位不吝赐教!


Native 代码如下:
jint Java_com_example_test1_NativeMethods_DrawJpg(JNIEnv * env, jobject  obj, jobject canvas)
{
SkCanvas* canv = GraphicsJNI::getNativeCanvas(env, canvas);
if (!canv)
{
return 0;
}
SkBitmap bp;
SkPaint paint;
SkImageDecoder::Format fmt;
    bool result = SkImageDecoder::DecodeFile("/sdcard/Android.png",&bp,SkBitmap::kARGB_8888_Config,SkImageDecoder::kDecodePixels_Mode,&fmt);
    if(!result)
    {
      LOGI("decoder file fail!");
     return -1;
    }
    else
    {

     result = SkImageEncoder::EncodeFile("/sdcard/new.jpg", bp,
       SkImageEncoder::kJPEG_Type,100);
    if(!result)
    {
      LOGI("encoder file fail!");
    }
 canv->drawBitmap(bp,0,0,&paint);
    }
return 1;
} skia  图片 背景 EncodeFile --------------------编程问答-------------------- --------------------编程问答-------------------- 上图为Android.png
[img=http://][/img]
new.jpg --------------------编程问答--------------------
new.jpg  --------------------编程问答-------------------- 求问LZ的引入skia的makefile是怎么写的 --------------------编程问答-------------------- //Android.mk

MY_LOCAL_PATH :=$(call my-dir)

LOCAL_PATH :=$(MY_LOCAL_PATH)

MY_LOCAL_ANDSRC :=E:/AndrSrc

include $(CLEAR_VARS)


LOCAL_C_INCLUDES :=$(MY_LOCAL_ANDSRC)/frameworks/base/core/jni/android/graphics \

$(MY_LOCAL_ANDSRC)/external/skia/include/core \

$(MY_LOCAL_ANDSRC)/external/skia/include/config \

$(MY_LOCAL_ANDSRC)/external/skia/include/images \

$(MY_LOCAL_ANDSRC)/external/skia/include/effects \

$(MY_LOCAL_ANDSRC)/external/skia/include \

$(MY_LOCAL_ANDSRC)/frameworks/base/include \

$(MY_LOCAL_ANDSRC)/system/core/include


LOCAL_MODULE    := Test

LOCAL_SRC_FILES := Test1.cpp


LOCAL_LDLIBS :=-llog -lcutils -lskia -ljnigraphics -landroid_runtime


include $(BUILD_SHARED_LIBRARY)
补充:移动开发 ,  Android
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,