1
Gdk.Pixbuf
(_pixbuf 아래)을 Windows Forms (System.Drawing
) 비트 맵으로 변환하려면 어떻게합니까? 아래는 Gtk.DotNet.Graphics
을 사용하는 코드이지만 흰색 이미지 만 제공합니다. 더 효과적이고 직접적인 방법이 있습니까? 나는 Mono에 대해 C#을 사용하고 있지만 다른 언어로 대답을하면 변환 할 수 있습니다.Gdk.Pixbuf를 System.Drawing.Bitmap으로 변환 하시겠습니까?
public System.Drawing.Bitmap toBitmap() {
Gdk.Pixmap pixmap, mask;
_pixbuf.RenderPixmapAndMask(out pixmap, out mask, 255);
System.Drawing.Graphics graphics = Gtk.DotNet.Graphics.FromDrawable(pixmap);
return new System.Drawing.Bitmap(width, height, graphics);
}
는
아주 좋은! 한 패키지로 편리하고 간편합니다! –
투명도가있는 pixbuf와 함께 작동하지 않는 것 같습니다 ... Gdk.Pixbuf.SaveToBuffer() 또는 Bitmap의 버퍼 읽기에 버그가있을 수 있습니다 (사용하고 있습니다). 모노). 투명도를 먼저 제거하려고합니다 ... –
오늘 아침에 시도했습니다. BMP 및 JPEG가 아닌 순수한 PNG 및 ICO 용으로 작업했습니다. JPEG는 투명도를 전혀 지원하지 않지만 BMP는 알파 채널을 지원합니다. BMP가 여기서 왜 작동하지 않는지 잘 모르겠습니다. –