希望有人可以帮忙。
我的笔记本电脑上安装了 MintKDE,但我记得 Phatch 无法加载 - 我只看到了徽标,但程序本身从未启动。我应用了此处详述的更改 -https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=811184#12- 然后它就起作用了。
我最近将操作系统改为 Kubuntu,现在 Phatch 无法加载 - 症状相同 - 我得到了 Phatch 徽标,但它实际上从未启动过。我已将其删除并重新安装,并尝试了详细说明的更改,但它仍然无法加载。
我想知道是否有人可以帮忙? Phatch 工作时为我节省了很多时间!
谢谢。
Kubuntu 17.04 Plasma 5.9.4 KDE Framweworks 5.31.0 内核 4.10.0-22 通用操作系统类型 64 位
答案1
我也遇到了同样的问题此修复幫助:
在文件中,
/usr/share/phatch/phatch/lib/pyWx/wxPil.py
我将单词fromstring
和tostring
改为frombytes
和tobytes
。现在 Phatch 似乎可以与Sid 中的最新库一起使用
python-imaging
。python-pil
以下是我的新
/usr/share/phatch/phatch/lib/pyWx/wxPil.py
:# Copyright (C) 2007-2009 www.stani.be # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program. If not, see http://www.gnu.org/licenses/ # Follows PEP8 import Image import wx def pil_wxImage(image): if image.mode == 'P': image = image.convert('RGBA') if image.mode == 'RGBA': wx_image = wx.EmptyImage(*image.size) wx_image.SetData(image.convert("RGB").tobytes()) wx_image.InitAlpha() wx_image.SetAlphaData( image.convert("RGBA").split()[-1].tobytes()) else: wx_image = wx.EmptyImage(*image.size) new_image = image.convert('RGB') data = new_image.tobytes() wx_image.SetData(data) return wx_image def pil_wxBitmap(image): return wx.BitmapFromImage(pil_wxImage(image)) def wxImage_pil(wx_image): size = wx_image.GetSize() image = Image.new('RGB', size) image.frombytes(wx_image.GetData()) if wx_image.HasAlpha(): alpha = Image.new('L', size) wx_alpha = wx_image.GetAlphaData() alpha.frombytes(wx_alpha) image = image.convert('RGBA') image.putalpha(alpha) return image def wxBitmap_pil(wx_bitmap): return wxImage_pil(wx.ImageFromBitmap(wx_bitmap))