私は PySide でアプリを構築しています。いくつかの画像操作を行う必要があり、これに Python コードを使用するのは遅すぎます。したがって、私はそれを行う.dllファイルをハックしました。関数の定義は次のとおりです。
extern "C" {
QRectF get_image_slant(QImage *img, float slantangle, float offset) {
これで、ctypes を介してこの関数をロードできます。しかし、ctypes に QImage を受け入れさせることができないようです。私はこのようにそれを呼び出してみました:
ext.get_image_slant(QImage(), 0, 0)
そして、私が得る返信は次のとおりです。
File "<stdin>", line 1, in <module>
ctypes.ArgumentError: argument 1: <type 'exceptions.TypeError'>: Don't know how to convert parameter 1
QImage を c_void_p にキャストするのに疲れましたが、それも好きではありません。私が言えることから、Pythonの QImage() はCの QImage * に正確にマップする必要がありますが、Pythonはそれを理解していないようです..
キャストを強制する方法はありますか?