質問
Web プロジェクトでは freeimage.net を使用しています。RotateClassic関数で画像(.jpg)を回転させたのですが、その後背景が黒くなってしまいます。透明にするにはどうすればよいでしょうか?助けてくれてありがとう。
解決 2
JPG のファイルは、gif や png のような透明度をサポートしていません。別の背景色を白(または他の色)に設定したいと思いますよね?さて、freeimage はこのオプションをサポートしていません。コードを (何度も) 試した後、背景色を白に変更する回避策を見つけました。
ClassicRotate.cpp
方法:水平スキューと垂直スキュー
1) memset の 2 番目のパラメータ (0) を 1 または希望の色に変更します。ただし、背景に関連するコメントが含まれる行のみです (メソッドによって 2 つの変更)
例:memset(dst_bits, 0, iOffset * bytespp);memset(dst_bits, 1, iOffset * bytespp);
2) memcpy を memset に置き換えます (メソッドごとに 1 つの変更)
例 memcpy(dst_bits, &pxlOldLeft[0], bytespp);memset(dst_bits, 1, bytespp);
私の場合、白を表すのに 1 を使用します (GIF、8BPP)
よろしく
他のヒント
CSS opacityプロパティをチェックアウトする必要があります。
所属していません StackOverflow