Функция не может открыть файл после компиляции py2exe

Я использую rdkit.

После сборки с помощью py2exe когда я звоню Draw.MolToImage В методе есть ошибка:

Warning: unable to load font metrics from dir 
C:\pythonApp\dist\library.zip\rd
kit\sping\PIL\pilfonts
Traceback (most recent call last):
    File "app.py", line 470, in <module>
    img=Draw.MolToImage(part[i])
    File "rdkit\Chem\Draw\__init__.pyc", line 124, in MolToImage
    File "rdkit\Chem\Draw\MolDrawing.pyc", line 536, in AddMol
    File "rdkit\Chem\Draw\MolDrawing.pyc", line 351, in _drawLabel
    File "rdkit\Chem\Draw\spingCanvas.pyc", line 74, in addCanvasText
    File "rdkit\sping\PIL\pidPIL.pyc", line 333, in drawString
ValueError: bad font: Font(12,0,0,0,'helvetica')`

Нет разницы, если я положу эти файлы в library.zip\rdkit\sping\PIL\pilfonts) или просто в dist папка и изменить пути в pidPIL.py в силе; приложение по-прежнему не может открыть metrics.dat,

Без py2exe конвертация, все работает отлично.

1 ответ

Используете ли вы "data_files" в вашем файле setup.py для включения папки pilfonts?

Например, что-то вроде этого:

setup(

    data_files = [("pilfonts", glob.glob("\rdkit\sping\PIL\pilfonts\*.*"),

    options = {"py2exe": {"compressed": 2,
    # etc etc
)
Другие вопросы по тегам