問題タブ [png-8]
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.
graphics - png24からpng8をどのように見分けることができますか
透過性のために、多くの png24 ファイルを使用する Web サイトに取り組んでいます。
png24 のすべての png 修正スタイルの javascript 回避策により、IE6 がランダムにロックされるため、それらを png8 ファイルに置き換える必要があります。
このリンクを参照して、IE6 が表示する症状を理解してください - http://blogs.cozi.com/tech/2008/03/transparent-pngs-can-deadlock-ie6.html
既存のpng24ファイルをターゲットにしてpng8sに置き換える簡単な方法を知っている人はいますか?
私は OS X を使用していますが、Adobe ブリッジなどのファイル ブラウザではこれが表示されず、コマンドラインやファインダーで情報を見つけることもできません。
ヘルプ!
java - pngout のような Png 画像を圧縮する Java のライブラリはありますか?
C/C++ で記述された pngout、pngcrush、optipng などの Png 画像を圧縮する Java のライブラリはありますか?
Phil が以下にコメントしたことの続きとして、pngout が行うのと同じように、Java の ImageIO クラスによって生成される画像のファイル サイズを、不要な情報を削除することによって削減することを意味していました。ImageIO クラスによって生成された画像に対して pngout を実行すると、ファイル サイズを約 50% 縮小することができました (縮小サイズは画像によって異なります)。そのため、ImageIOクラスで生成された画像ファイルのサイズを縮小できるように、Javaとインターフェースできるツールまたはライブラリがあるかどうかを知りたいと思いました。
png - FireworksのPNG8+Alpha(カラーマップ)は、他の場所(RGBA)とは異なる/小さいです。なんで?
Fireworksで、アルファ透明度のPNG8ファイルをエクスポートすると、結果のファイルは次のようになります。
他のツール(PNGOUT、Smush.it)を使用して32ビットPNGを変換すると、結果は次のようになります。
違いは正確には何ですか?どちらもアルファ透明度がありますが、Fireworksファイルは8KBで、その他は20KBです。これで、Fireworksファイルの品質が著しく低下します(つまり、グラデーションのバンディングが発生します)。
一部の画像では、FireworksのPNG8 + alphaがうまく機能し、ファイルサイズが比較的小さくなっています。Fireworksが何をしているのか、他の方法とどのように違うのかを理解できていません。
php - PHPgdLib8ビットPNGとアルファ
gdで作成した画像をpng-8として保存するにはどうすればよいですか?
透明なチャンネルでgifとして保存できますが、png-8を使用したいと思います。
よろしく、Beerweasle
php - 画像がPNG24またはPNG8であるかどうか、およびビットとチャネルの数を確認する方法は?
または Imagickを使用して PNG-8 と PNG-24 の画像を区別しようとしてgetimagesize
いますが、その方法がよくわかりません。
getimagesize
PNG のチャンネルを返さず、代わりに MIME タイプを表示します。他の画像ではうまく機能し、正しい値が表示されますが、PNG では何も表示されません。
編集:Imagickは私の環境にインストールされていませんが、gdlibは...
誰かが私を少し助けることができますか?
こんにちは、
トム
edit2: このようにすることは可能ですか?
また、truecolor が false または設定されていない場合、それは png24 ですか?
cocoa - NSImage を使用してパレット RGBA PNG を作成して書き込む
Cocoa フレームワーク* を使用して、RGBA パレット (パレット エントリあたり 32 ビット) を使用するパレット PNG 画像 (ピクセルあたり 8 ビット)を作成しようとしています。
[NSBitmapImageRep initWithBitmapDataPlanes:…]
メソッドの組み合わせをいくつか試しました。に適したビットマップを作成しているようですbitsPerSample:2
bitsPerPixel:8
。
ただし、そのようなビットマップを書き込もうとすると、次のよう[NSBitmapImageRep representationUsingType:NSPNGFileType…]
になります。
他のビット深度を試すと、1 ピクセルあたり 32 ビット (パレットなし) の画像が得られます。
*) を使用できることはわかっていますlibpng
が、それは私が探している答えではありません。
ruby - ChunkyPNG または RMagick で 8 ビット PNG を保存する方法
RMagick ( http://rmagick.rubyforge.org/ ) と ChunkyPNG ( https://github.com/wvanbergen/chunky_png )を使用して 8 ビット PNG (PNG8) を保存しようとしましたが、できませんでした。 .
ただし、RMagick で動作させることができるのは、ImageMagick のインストールが通常の 16 ではなく 8 の QuantumDepth に基づいている場合のみです。この設定をその場で変更することはできません。ImageMagick のインストールをコンパイルする必要があります。この設定で。また、画像を作成するときに深さを 8 に設定したり、保存時にフォーマット タイプのプレフィックスを付けたりしても効果はありません。
すなわち。img.write('PNG8:image.png')
とにかく、私は ChunkyPNG を見てきましたが、RMagick よりもこれを使用することを本当に好みます。単純に、純粋な Ruby であり、ImageMagick に依存していないためです。それを使用してPNG8を保存することもできません。
グラフィックプログラムを使用して、後でPNGを8ビットに変換する必要があります-
私の質問:
ImageMagick Q16 がインストールされているマシンで ImageMagick Q8 のように 8 ビット PNG を適切に保存する方法はありますか?
ChunkyPNG で独自の 4 ビット エンコーダーを実行するためのポインターを提供したり、PNG8 を保存する方法を知っている人はいますか?
前もって感謝します..
c# - FreeImageライブラリ(C#)を使用してPNG-8パレットの色数を減らす
私はFreeImageNETライブラリを使用してビットマップを次のように量子化していました
これにより、256色のパレットを備えたPNG-8が得られます。私が見つけたPhotoshopを使用して、128、64、16などのカラーパレットを減らしたアダプティブアルゴリズムを使用すると、サイズをさらに小さくすることができます。もう一度開くと、Photoshopが残りの(より高い)インデックスのグレーレベルを塗りつぶします。
限られたパレットで、アルゴリズムとパレットサイズの両方を指定できるPILを使用FreeImageAPI.FreeImageBitmap.Quantize()
して、同様のPNGを作成することはできません。convert()
ありがとう。
image-processing - 半透明ピクセルを保持することにより、ImageMagick を使用して 32 ビット png を 8 ビット png に変換します。
ImageMagick で 32 ビット png を 8 ビット png に変換したいのですが、半透明のピクセルが失われます。この問題を解決するには?私が使用しているコマンドは次のとおりです
objective-c - パレット CGImageRef の作成
CoreGraphics を使用してパレット (インデックス付き) PNG を作成しようとしています。
私が見つけた最高のものは、私が使用できることです:
CGColorSpaceRef colorSpace = CGColorSpaceCreateIndexed(CGImageGetColorSpace(maskedImage), 255, <#const unsigned char *colorTable#>);
それで:
CGImageRef palettedImage = CGImageCreateCopyWithColorSpace(maskedImage, colorSpace)
ただし、colorTable として何を配置すればよいかわかりません。呼び出し時に ImageIO に既に組み込まれているアルゴリズムなど、事前に作成された (高速な) 量子化アルゴリズムを活用したいと思います。CGImageDestinationCreateWithURL(url, kUTTypeGIF , 1, NULL);
PNG のパレットを作成するにはどうすればよいですか?