問題タブ [gdkpixbuf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
632 参照

python-2.7 - GdkPixbuf - Python からピクセル データをファイルに保存する

Windows で Python から GdkPixbuf を使用して、いくつかのピクセルをファイルに保存しようとしています。私は優れたPyGI AIO (3.14.0)バイナリを利用しています。

拡大した結果は次のようになります。

bmp (4x4) にエンコードします。

明らかに、最初の数ピクセルが破損しています。壊れたピクセルの量は、画像のサイズによって異なるようです。ただし、一部のピクセルはそのまま残ります。私のコードにエラーがあるか、何らかの理由でメモリが破損しているに違いありません。より大きな画像をエンコードすることは可能であり、エラーは常に最初の数ピクセルに現れます。これは文字列のエンコードの問題か何かでしょうか?

編集: OS Xでプログラムをテストしましたが、エラーは非常に似ています。したがって、GdkPixbuf への Python バインディングに関する一般的な問題であると思われ、これに関連している可能性があります。これは、スクリプトの変更されたバージョンによって生成された、より大きな PNG です。赤と緑の線のグリッドは予想される出力ですが、画像の上半分のピクセルは単なるノイズです。

png (10x10) にエンコードします。

0 投票する
3 に答える
3000 参照

python - Gtk TreeView ツリーにアイコンまたは色を表示する

Gtk TreeView (GTK3 の Python バインディング) の列の 1 つで、ファイルの読み込みや色の表示に問題があります。QGIS の例では、最初の行にアイコンが表示され、2 行目に青い円が表示されます。色はレイヤー プロパティから取得されます。

ここに画像の説明を入力

私のコードは次のようになりますが、同じディレクトリに icon.png ファイルをロードしません:

GTK3 pixbuf のドキュメントは次のとおりです。

PyGTK の古い例はここにありますが、これの処理方法が実際に変更されています。

0 投票する
1 に答える
485 参照

gtk - Gtk3はDrawingArea内にPixbufAnimationをロードしていますか?

私の gstreamer アプリケーションの目的で、シンク要素に DrawingArea ウィジェットのハンドルを与える前に、単純なローダーについて考えました.gif。ウィジェットPixbufAnimationで使用しましたが、同じロジックが機能せず、メソッドがないため、どうすればよいかわかりません。最後の手段として、ここに助けを求めに来ました。Gtk.ImageGtk.DrawingAreaadd

これは私が Gtk.Image で行ったことです:

DrawingArea で同じことを達成することは可能ですか?

0 投票する
1 に答える
1825 参照

python - Gtk+3 Gdk Pixbuf.new_from_data で「セグメンテーション違反 (コア ダンプ)」エラー 139 が返される

私のアプリケーションには、選択したファイルから処理された画像を表示する必要がある GtkImage があります。したがって、ハンドラーセクションには次のものがあります。

ここまでは、すべて OK です。もしそうなら:

予想される画像が GtkImage ウィジェットに貼り付けられます。しかし、それは醜い方法ですよね?

だから私はしようとしています:

しかし、結果は「エラー 139、セグメンテーション違反 (コア ダンプ)」です。

私は何が欠けていますか?

0 投票する
1 に答える
286 参照

c - 生のビットマップ データから GdkPixbuf を作成する

GDK を使用して、 Cleanグラフィックス ライブラリ (具体的には ObjectIO) を Linuxに移植しようとしています。このライブラリは、互換性の問題から触れたくない非 OS 固有の部分と、触れることができる OS 固有の部分で構成されています。

私が実装しなければならない関数の 1 つは、.bmp ファイルから生データを取得し、これからビルドする必要がある関数ですGdkPixbuf。この関数は C で記述する必要があります。

function を認識してgdk_pixbuf_new_from_file()いますが、ファイル名を取得できません (ライブラリの非 OS 固有の部分にあるため、変更できません)。私は生データのみを取得します。

このマニュアル エントリを見たので、 を使用できると思いますが、これには画像の行ストライドgdk_pixbuf_new_from_data()を知っている必要があり、その取得方法がわかりません。

ファイルから行ストライドを取得する方法はありますか? そうでない場合、私が見る唯一の可能性は、データを含む一時ファイルを作成してから呼び出すgdk_pixbuf_new_from_file()ことですが、それは本当に醜いでしょう。

0 投票する
1 に答える
633 参照

python - GDK Pixbuf からの png 画像の再構築

画像 Pixbuf をソケット経由で送信したいのですが、受信した画像は白黒で歪んでいます。私が使用している手順は次のとおりです。

1) その Pixbuf のピクセル配列を取得する

2) ピクセル配列をシリアル化する

3) シリアル化された文字列を BytesIO に変換します

4) ソケットを送信する

この後、次の方法でイメージを再構築する必要があります。

1) 受信した文字列を元のピクセル配列で逆シリアル化します

2) ピクセル配列から Pixbuf を構築する

3) 画像を保存する

0 投票する
2 に答える
1040 参照

python - (PIL、pixbuf を使用して) スケーリングなしで画像の OCR を改善しますか?

スクリーンショットで OCR 認識を作成しようとしています。(クリックしたデスクトップの領域の) スクリーンショットを撮った後、pibxbufferに移動し、そのコンテンツはpytesseractに移動します。しかし、pixbuffer を使用した後は画質が悪くなります。つまり、歪んでいます (pixbuffer ではなく、ディレクトリに保存しようとして、調べました)。

画像をディレクトリに保存したところ、問題なく (品質)、認識も良好でした。
なしで試してみImage.ANTIALIASました-違いはありません。

(20倍拡大の目的:ディレクトリに保存された画像を認識させるコードを試してみましたが、拡大縮小せずに認識品質が悪かったです。)

悪い絵

問題は、画像が歪んでいることです。

0 投票する
1 に答える
1157 参照

python - Gtk3+ で base64 でエンコードされた画像から画像を読み込む

主な問題は、私が見つけたものから、base64 でエンコードされたイメージからイメージをロードする簡単な/文書化された方法がないことです。次のコードを使用して、イメージを base64 にエンコードします (ソースにすべてのイメージを含める必要がなく、一時ファイルを作成して終了時に削除する必要もありません)。私が使用する画像形式は.png、Gtk3+ でサポートされているものです。(結果から。この目的でGtk3 +GdkPixbuf.Pixbuf.get_formats()['png']使用する方法について本当に混乱しています。

たとえば、出力を使用したい:

base64 から画像をレンダリングします。

補足として、tkinterこれは次の方法で簡単に実行できました。

そして、必要な場所に画像を表示します。

Gtk3+ に戻ると、base64 からイメージをロードする方法が見つかりませんでした。でもGdkPixbuf.Pixbuf.new_from_data、壊れた画像が表示されます。も試しましGio.MemoryInputStream.new_from_bytesたが、画像の形式がサポートされていないと表示されます。