2 ビットの色深度でパレット化された PNG を開くことができる Go 用のライブラリはありますか?
Feb 09, 2024 pm 11:30 PMphp Editor Xigua Go は強力なプログラミング言語ですが、2 ビット色深度のパレット PNG を開くことができるライブラリはありますか?答えは「はい」です。 Go 言語には、画像を操作するためのライブラリとツールが多数あり、その一部は特定の深さでパレット化された PNG 画像を開いて処理できます。これらのライブラリを使用すると、2 ビットの色深度でパレット化された PNG イメージを簡単に読み取り、編集でき、アプリケーションに機能と柔軟性が追加されます。初心者でも経験豊富な Go 開発者でも、これらのライブラリは、より優れた画像処理および編集機能を提供して目標を達成するのに役立ちます。
質問内容
goを使ってパレットベースのpng画像を読み込むにはどうすればよいですか?
Python の画像の場合は、次のようにするだけです:
リーリーgo を使用:
リーリーデコード時に「png: 無効な形式: png ファイルではありません」がスローされます。
Mac シェルで file
コマンドを使用すると、次のように表示されます:
vscode は画像を非常にうまくレンダリングします。
Adobe Illustrator で作成した画像と次のコードで生成した画像の両方でこれを試しました。どちらでも同じエラーが発生します:
from pil import image im = image.open('image.png') pix = im.load() for i in range(100): for j in range(100): print(pix[i, j])
解決策
あなたの場合、それは画像の形式ではなく、画像ファイルの使用方法にあるようです。
最初に image.DecodeConfig()
に渡していると思います (コードには表示されていませんが、cfg
は初期化されているはずです)、次に に渡します。 image.Decode()
。
問題は、最初の呼び出しの後、ファイルにはオフセットがあるのに、2 番目の呼び出しではファイルの先頭から読み取っていると想定されていることです。
この問題は、構成を読み取った後にファイルをロールバックすることで解決できます:
File.Seek(0, io.SeekStart)
以上が2 ビットの色深度でパレット化された PNG を開くことができる Go 用のライブラリはありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

人気の記事

人気の記事

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











golang でリフレクションを使用してプライベート フィールドとメソッドにアクセスする方法

Golang テクノロジーを使用して分散システムを設計する場合、どのような落とし穴に注意する必要がありますか?
