DxLibを使って、Android用アプリをつくってます。
先日、X68000Z にアプリを移植したのですが、以下のような関数があって便利でした。
同じような関数はできないでしょうか
get int get(int x1,int y1,int x2, int y2, int *na, int sz)
アクティブページのwindow内の指定の範囲(x1,y1)-(x2,y2)の
グラフィックのドットパターンを配列 na に取り込む。
引数 na は配列
x1,y1...取り込む左上頂点の座標
x2,y2...取り込む範囲の右下頂点+1の座標
na......取り込まれる配列ポインタ
sz......確保された配列のバイト数(sizeof(na))
戻り値 0:成功 −1:エラー発生
put int put(int x1,int y1,int x2, int y2, int *na, int sz)
get関数で取り込んだドットパターンを画面に配置する。
引数 na は配列
x1,y1...左上頂点の座標
x2,y2...右下頂点+1の座標
na......データ配列のポインタ
sz......確保された配列のバイト数(sizeof(na))
戻り値 0:成功 −1:エラー発生
クリッピング領域や画像がない部分を含む場合はエラーでかまいません
使用目的ですが、いろんな用途に使えるとおもいますが、
一番ほしいのは、文字処理で、
以下のようなことを高速に処理したいです
1)裏画面に文字かいて、配列Aに get
2)配列Aに取得した文字パターンに独自イフェクトを加える(変形、色追加とかいろいろ)
3)表画面の文字出力場所を配列Bに get
4)イフェクトをつけた文字を配列Bに合成
5)配列Bを元の場所に put
配列にはいる色の順番や、ビット数が、デバイスによって異なるかもしれません。
知る方法があればありがたいですが
用意する最大値だけ教えてもらって、あとは自分で調べるでもよいです。
どうでしょうか