2017-02-21 30 views
1

здесь может быть некоторый код в java, он работает правильно, но я хочу преобразовать этот код в JNI, возможно ли это или нет, если возможно, то как я могу использовать Matrix and Canvas в JNI, пожалуйста, любой орган помогите мне в этом.Android-графика Matrix and Canvas в JNI

public static Bitmap myBitmapTest(Bitmap src) { 
     Bitmap dst = Bitmap.createBitmap(src.getWidth(), src.getHeight(), Bitmap.Config.ARGB_8888); 
     Canvas canvas = new Canvas(dst); 
     Matrix matrix = new Matrix(); 
     Paint paint = new Paint(); 
     matrix.setRotate(90, src.getWidth()/2, src.getHeight()/2); 
     canvas.drawBitmap(src, matrix, paint); 
     return dst; 
    } 

ответ

0

Вы должны передать свое полное растровое изображение через JNI.

Существует аналогичный вопрос здесь: Rotating a bitmap using JNI & NDK

Где вращение растрового изображения выполняется как операция JNI. Чувак также опубликовал целую тему здесь о JNI растровых операций: JNI bitmap operations , for helping to avoid OOM when using large images

+0

привет @ w00ly может также ссылаться всю эту библиотеку, но здесь эта библиотека только выполнить операцию на растровом изображении, например, взять транспонирование матрицы будет давать 90 градусов вращение и так может быть, но как я могу комбинировать холст и матрицу. –

+0

Ну, в вашем примере вы загружаете свой растровый рисунок в свой холст, чтобы применить преобразование к изображению с помощью Матрицы, не так ли? Ваша цель - вращение? Если да, образец, связанный ранее, может помочь вам добиться преобразования с использованием JNI. – w00ly