надеюсь, кто-то может помочь.
У меня был MintKDE, установленный на моем ноутбуке, и, как я помню, Phatch не загружался - вместо этого я просто получил логотип, но сама программа так и не началась. Я применил приведенные здесь изменения - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=811184#12 - и затем он работал.
Недавно я изменил ОС на Kubuntu и Phatch теперь не загружаются - симптомы одинаковые - я получаю логотип Phatch, но он никогда не запускается. Я удалил его и переустановил, и попробовал изменения как подробные, но он все равно не будет загружаться.
Интересно, может ли кто-нибудь помочь?
Kubuntu 17.04 Plasma 5.9.4 KDE Framweworks 5.31.0 Kernel 4.10.0- 22generic OS Тип 64 бит
У меня была та же проблема, и это исправление помогло:
В файле /usr/share/phatch/phatch/lib/pyWx/wxPil.py я сменил слова fromstring и tostring на frombytes и tobytes. Теперь Phatch работает с последними библиотеками python-imaging и python-pil в Sid. Ниже мой новый /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))
У меня была та же проблема, и это исправление помогло:
В файле /usr/share/phatch/phatch/lib/pyWx/wxPil.py я сменил слова fromstring и tostring на frombytes и tobytes. Теперь Phatch работает с последними библиотеками python-imaging и python-pil в Sid. Ниже мой новый /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))