4

画像が Firefox からクリップボードにコピーされます。私のプログラムはクリップボードからそれを取得し、JPEG 画像として保存します。何らかの理由で画像が黒い背景で保存されます。IE で同じ URL を開いて画像をクリップボードにコピーすると、画像はプログラムによって正しく保存されます。Delphi 7 を使用しています。

また、画像を Firefox から Microsoft Paint にコピーして、再び黒い背景をコピーしようとしました。このような問題を処理する方法についてのヒントはありますか。

4

3 に答える 3

2

元の画像は透明だと思いますか?その場合、JPEG は透明度を処理できないことに注意してください。出力画像の種類を切り替えて、プログラムが魔法のように消えるかどうかを確認してください。

于 2009-05-24T01:10:49.280 に答える
1

プログラムとペイントで同じ背景が得られた場合、これはFirefoxと関係があることを示しているため、必ずしも解決する必要のある問題ではありません。

背景色が気になるので、コピーしている画像には透明な要素が含まれていると思います。だから教えてください:そこには何色が必要ですか?JPEG画像は透明な部分を持つことができないため、すべてのピクセルに何らかの色が必要です。Firefoxは明らかにそこに黒を置くことを選択します。それはどのように正しい選択ではなく、Internet Explorerの選択は正しいのでしょうか?

GimpやPhotoshopなどのPaintよりも高性能なグラフィックプログラムに貼り付けると、どのような色の背景が得られるのだろうか。これらのプログラムは、複数のクリップボード形式を検討し、最も適切な形式を選択することを期待しているため、利用可能な場合は透明性に対応する形式を選択する可能性があります。一方、プログラムとペイントはおそらくcf_Bitmapフォーマットを使用するだけで、もちろん透明なピクセルを使用することはできないため、コピープログラムが空白を埋めるために使用することを選択したものは何でも取得します。

ちなみに、FirefoxとInternet Explorerはどちらも、画像をブラウザからデスクトップまたは他のフォルダウィンドウに直接ドラッグして、元の画像を保存することができます。多分それはあなたのプログラムを不必要にしますか?

于 2009-05-24T01:25:36.130 に答える
1

これは少し古い質問であることは知っていますが、Firefox v9 で同じ問題に遭遇しました。

次の回避策を使用します。問題の画像をコンピューターに保存し、ファイルをエクスプローラーでコピーして、使用するプログラムに貼り付けます (私の場合は、Word に貼り付けました)。

于 2012-01-18T20:11:10.103 に答える