proDiva
Ноя. 14, 2007 15:48:54
Вот пример вывода сплошного текста с выбором текстового файла:
# -*- coding: cp1251 -*-
import os
import string
import wx
from wx.lib import printout as pr
wildcard = “Text files (*.txt)|*.txt|” \
“All files (*.*)|*.*”
if __name__ == ‘__main__’:
app = wx.PySimpleApp()
dlgf = wx.FileDialog(None, message=“Выберите файл:”, defaultDir='',
defaultFile=“”, wildcard=wildcard, style=wx.OPEN | wx.MULTIPLE | wx.CHANGE_DIR
)
dlgf.Show(True)
if dlgf.ShowModal() == wx.ID_OK:
# Окно диалога возвращает список файлов
paths = dlgf.GetPaths()
for path in paths:
text = open(path).readlines()
ptbl = pr.PrintTable()
ptbl.SetHeader(str(path))
ptbl.data = (text) # в скобках список строк
#ptbl.label = ('One','Two','Three','Four','5') # если разремарить ptbl.label, на печать выйдет таблица
ptbl.Preview()
app.MainLoop()
vak
Ноя. 15, 2007 03:01:16
По третьему примеру, получается таблица. А если нужен просто текст? Пробовал печатать объявления, нужно было много и все разные, при этом в таблице как бы получался один столбец. Все вроде нормально, но ширина текства на листе получалась 2/3 листа А4. текст как бы “заворачивался” раньше чем нужно. Чем это вылечить я так и не сообразил. Может подскажете? Да, и не понятно как менять размер шрифта. Пробовал присваивать значения переменной объекта, - не помогло, а нужный метод я не нашел.
pythonwin
Ноя. 15, 2007 07:31:40
если нужно печатать просто текст (*.txt) да ещё и с настройками шрифтов,то можно его и в html превратить. :)
VicMir
Ноя. 15, 2007 10:35:47
Кто-нибудь использует PythonReports? Как задать переменную data в дизайнере шаблонов, ее значение?
proDiva
Ноя. 15, 2007 11:48:57
pythonwin
если нужно печатать просто текст (*.txt) да ещё и с настройками шрифтов,то можно его и в html превратить.
Я так пробовала, все отлично, но…………. кириллица выходит иероглифами, сколько бы я ни проставляла в заголовок html-файла кодировку.
vak
Да, и не понятно как менять размер шрифта.
настройки размеров страницы и шрифта имеются……. нужно просто поискать синтаксис, сейчас поищу.
vak
Ноя. 15, 2007 15:02:13
VicMir
Кто-нибудь использует PythonReports? Как задать переменную data в дизайнере шаблонов, ее значение?
Можно кратко что такое PythonReports ? Насколько функционален? Сейчас выбираю на чем делать печать документов и боюсь ошибиться. Пока склоняюсь к использованию Reportlab.
shiza
Ноя. 15, 2007 16:38:02
Мне проще всего в свое время оказалось генерить html и делать ему предпросмотр и печать. =)
pythonwin
Ноя. 16, 2007 06:40:22
vak
склоняюсь к использованию Reportlab.
на нем хорошо делать не изменяемые отчеты
proDiva
Я так пробовала, все отлично, но…………. кириллица выходит иероглифами, сколько бы я ни проставляла в заголовок html-файла кодировку.
а кодировка в meta-тегах совпадала с кодировкой текста который вставляешь в документ?
VicMir
Ноя. 16, 2007 07:27:11
OlDer
Я использую http://reportman.sourceforge.net/
Для python есть модуль тут: http://tech.groups.yahoo.com/group/reportman/files/ но нужно быть участником этой группы и залогиниться. Попытался прикрепить этот файл здесь - не получилось…
Еще люди используют reportlab или http://pythonreports.sourceforge.net/
Пробовал Report Manager на Linux. Есть проблемы. Не поддерживает UTF-8 (системная локаль). Русские шрифты не отображаются, хоть и установил соотв. шрифт. Еще существует проблема с выводом на принтер: печатает символы вразброс вместо документа. В pdf выводит правильно (если настроить шрифты).
На Windows никаких проблем нет.
vak
Ноя. 16, 2007 08:15:33
Еще такой вопрос… С помощью Reportlab создаем отчеты в виде файлов pdf, а как отображать органично результаты в wxPython? Приложение то должно работать как единое целое. Чем отображать отчеты? Посмотрел документацию по wxPython - есть wxDocument - это поможет? Подскажите кто в курсе.