2012-03-29 25 views
7

Qt entegrasyonu ile Eclipse için PyDev eklentisini kullanıyorum. PySide yüklü ve SVG görüntü formatlarında sorun yaşıyorum. Uygulamamı çalıştırdığımda, C:\Python27\Lib\site-packages\PySide\plugins\imageformats'da bulunan biçimlerin bulunduğunu biliyorum. Tümü SVG formatı. Qico4.dll dosyasını kaldırabilir ve artık onları bulamaz ve tekrar yerleştirebilir ve tekrar bulur.PySide SVG resim formatları bulunamadı?

benim kodunda bu hattı kullanıyorum

: plugs = QtGui.QImageReader.supportedImageFormats()

Bu qsvg4.dll gelen SVG formatında dışındaki biçimlerinin tüm bulur? Bu neden olsun ki? Arama yaptım, arandım ve aradım ve nedenini anlamaya çalışmıyor. Format, desteklenen görüntü formatlarında gösterilsin mi? SVG görüntülerini kullanmam gereken başka bir şey var mı? Iico dosyalarını qico4.dll gerektiren ve aynı zamanda sorunun ne olduğunu anlamıyorum neden olan aynı yerde bulunan kullanabilirsiniz kullanabilirsiniz? Herhangi bir yardım takdir edilir!

+0

Eğer 'yapabilir Pyside ithalat QtSvg' dan? – Avaris

+0

Evet Bunu yapabilir ve kullanabilirim. Desteklenen görüntü formatlarında hala görünmüyor. Bir SVG görüntüsünü, bir stil sayfasındaki bir ICO görüntüsüyle aynı şekilde kullanmaya çalışıyorum. ICO, bir kaynak dosyaya koyup koymadığımı veya doğrudan ona bağlayıp bağlamayacağımı gösterir. Svg dosyaları iki şekilde çalışmayacak. Bu yüzden kafam karıştı. Yorumlayıcı qsvg4.dll için başka bir yere mi bakıyor? Ya da bir resim formatı olarak belirtmek için başka bir şey yapılması gerekiyor? : -/ – user1301848

+0

Herşeyi, başka bir bilgisayarda vizörle çalıştırdım bile. Diğer bilgisayar bir XP'dir. Hala aynı şeyi yapıyor. Qsvg4.dll tüm diğer görüntü formatı dll gibi çalışacak mı değil mi? gif, jpeg, vb hepsi iyi çalışıyor ... – user1301848

cevap

10

SVG görüntüleri kullanmak için, import QtSvg and QtXml'a ihtiyacınız vardır ve ayrıca eklenti dizininin doğru şekilde içe aktarıldığından emin olmalısınız.

Aşağıdaki kod benim için başarıyla bunu yapmaz:

import os 
import PySide 
from PySide import QtSvg, QtXml 
# You need to have created your QApplication already... 
qApp = QApplication.instance() 
for plugins_dir in [os.path.join(p, "plugins") for p in PySide.__path__]: 
    qApp.addLibraryPath(plugins_dir) 
+0

Bu, 'easy_install PySide' çalıştırdığım bir virtualenv üzerindeydi –