Найти - Пользователи
Полная версия: как пронумеровать страницы внизу xlwt
Начало » Python для новичков » как пронумеровать страницы внизу xlwt
1 2 3
ingfa_1981
Я думал для приготовления отчетов. А чем вообще отчеты можно делать, в каком виде выводить их?
doza_and
ingfa_1981
А чем вообще отчеты можно делать, в каком виде выводить их?
1. Много чем можно делать отчеты. У нас практически все документы с названием на титульной странице “Отчет” на конечной стадии делаются LaTeX.
2. Наиболее востребованный формат pdf + на бумаге с подписями и печатями.

noob_saibot
Нажать 5 кнопок, нежели код писать
Это при изготовлении документов не пойдет. Отчеты идут пачками, иногда в несколько десятков штук, идут в разные организации, идут с интервалом в несколько месяцев. От них требуется строгий единообразный стиль, соответствующий требованиям ГОСТ и нормоконтроля разных организаций. Сегодня вы нажмете 5 кнопок, а через пару месяцев напряженного труда 4 и получите возврат документов по формальному не соответствию требованиям нормоконтроля с переносом сроков этапов, задержкой выплат, лишением премий ….

Это была мрачная сказка, но так иногда бывает.

p.s.
Мораль. Чем и что делать больше зависит от ваших задач.
ingfa_1981
Самый простой небольшой отчет у меня. С шапкой и данными. Но к сожалению экзелем я не могу полностью удовлетворить свои потребности.
А можно мне ссылок примеров каких нибудь отчетов в виде html и pdf?
doza_and
LaTeX это если надо качество. НО!! технология можно сказать отртогональна MS Office.
ставите miktex
http://miktex.org/download
а потом :) компилируете документ командой pdflatex.

Примеры:
http://www.latextemplates.com/

Вообще принято писать свои стили, но можно и в один файл извратиться запихнуть.

Файл текстовый. Данные можно задать программой, а стиль - шаблонами латеха.
ingfa_1981
Попробую разобраться. Спасибо
doza_and
LaTeX это довольно сложный способ. Может проще будет генерировать html при помощи шаблонизаторов. Если вы владеете Python то будет просто освоить Mako. http://docs.makotemplates.org/en/latest/
ingfa_1981
Я поискал по мако нет практически информации на русском. Не могли бы вы скинуть мне примеров самых простых?
doza_and
можете смотреть примеры на сайте. Опишу только принцип использования.

Допустим Вам надо сделать массу документов программно.
1 Берете GUI редактор, делаете документ-шаблон.
2 Сохраняете в текстовом виде (html, latex)
3 полученный текст переносите в программу в виде строки.
4 В этом тексте делаете разметку. ${name} для переменных которые будут программно меняться %for для циклов и т.п. см по документации Mako. Это творческая фаза - обобщение исходного документа.
5 Запускаете в цикле Template(tpl).render(data=data,auth=u“Иванов”) подставляя нужные аргументы.
6 для конвертации в pdf возможно потребуется вызвать постпроцессор (pdflatex,html2pdf и т.п.)

#!/usr/bin/env python
# -*- coding: utf-8 -*-
from mako.template import Template
tpl=u"""
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
    <meta http-equiv="content-type" content="text/html; charset=windows-1251">
</head>
<body lang="ru-RU">
<h1>Отчет</h1>
<table style="width:300px"   border="1">
%for i,d in enumerate(data):
<tr>
  <td>${i}</td> <td>${d}</td>
%endfor
</table>
Выполнил Иванов
</body>
</html>
</html>"""
data=[1,2,3]
print Template(tpl).render(data=data,auth=u"Иванов")
ingfa_1981
Все понятно кроме этого, что такое data=data и auth=u“Иванов?
doza_and
data=data,auth=u“Иванов”)
kosmo67
как пронумеровать страницы в экзель файле, для вывода на печать, если я пишу в один лист..

wb.get_sheet(0).set_header_str('')
wb.get_sheet(0).set_footer_str('&P')
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB