Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Java: Общие вопросы > Java и принтер |
Автор: Сонечка 21.5.2012, 12:16 |
Всем привет! Как лучше и удобнее всего распечатать результаты работы Java-приложения, оформленные в виде таблиц? Хотелось бы приложить минимум усилий и получить нормальное форматирование. Среди вариантов: использовать средства библиотек, импортировать в html, использовать open office. Может есть еще что-то? Жду ваших советов=) |
Автор: Metal_Heart 21.5.2012, 12:38 |
Всё зависит от конкретной задачи. У меня задача была простая, отобразить простенький однообразный отчет. Потому делал отчеты в html, и с библиотеками заморачиваться не надо, и с принтером - открыл в браузере .. распечатал. Правда здесь хитрость была, я сначала разработал html-шаблон, а затем просто его открывал как файл и модифицировал требуемые поля. Но данный вариант влечет нюанс - если таблица не вместится на страницу она будет разбита на несколько без копирования её шапки, что не красиво. Это может случиться при печати на разных принтерах. |
Автор: Сонечка 21.5.2012, 13:07 |
Ну у меня таблица с разным числом столбцов, в зависимости от выбора пользователя. И еще нужно, чтобы распечатывалась в альбомной ориентациии. И принтеры, вероятно, будут как раз разными. |
Автор: LSD 21.5.2012, 16:09 |
Начни с http://docs.oracle.com/javase/tutorial/2d/printing/index.html. |
Автор: Сонечка 21.5.2012, 16:44 |
Щас я как всегда все почитаю, найду самый кривой и сложный метод, и буду над нимм шаманить ![]() Ладно, спасибо) Пошла читать |
Автор: Ares4322 22.5.2012, 08:43 |
А приложение какое: веб или настольное? Отчет в каком виде: swing-форма или html или что-то еще? |
Автор: Сонечка 22.5.2012, 10:54 |
Swing) С html вопросов бы не было=) |
Автор: Ares4322 22.5.2012, 12:40 |
http://docs.oracle.com/javase/tutorial/uiswing/components/table.html#printing http://docs.oracle.com/javase/7/docs/api/javax/swing/JTable.html#print() Оно? |
Автор: Сонечка 22.5.2012, 13:24 |
Оно-то да. Но что лучше делать? Просто печатать из программы? Или переформатировать во что-нибудь и печатать? |
Автор: Ares4322 22.5.2012, 13:27 |
Все от Вашей задачи зависит. Вам подходит формат, который выдается через стандартный метод печати? Если нет, то придется что-то самой выдумывать. |
Автор: Сонечка 22.5.2012, 14:51 |
Да мне все равно) Я б их заставила скриншоты из пейнта распечатывать))))))))))))))))))) Вот сейчас мне начинает казаться, что легче просто распечатывать, чем загонять в другой формат |
Автор: Ares4322 22.5.2012, 21:28 |
Вам правильно кажется) |
Автор: aleksandy 23.5.2012, 06:49 |
Формируй rtf и отдавай файл в качестве результата. А потом юзвери пусть сами где хотят там и открывают, правят, печатают. Если править не нужно можно делать pdf-ки |
Автор: Сонечка 23.5.2012, 11:41 | ||
Нее, они так не умеют.) Ares4322, спасибо) |
Автор: aleksandy 24.5.2012, 07:09 |
Чего не умеют? В MSWord/[Open|Libre]Office нажать кнопку "Печать"? Тогда мне, действительно, тебя жаль ![]() |
Автор: Сонечка 24.5.2012, 10:43 |
У меня клиенты совсем гуманитарии. Часть из них еще и весьма элегантного возраста и недолюбливают компы) По крайней мере так говорит заказчик. Так что прога должна быть понятной им на каждом шаге и не открывать какие-то адские сторонние приложения=) А-то им еще курсы вести придется хДДД |
Автор: jk1 24.5.2012, 11:07 | ||
Тогда берите JasperReports, делайте для него шаблон документа и печатайте прямо из приложения. Проверено, даже самые одаренные пользователи осиляют нажать одну кнопку "печать". |
Автор: Сонечка 24.5.2012, 11:32 |
Ну вот как-то так я и собираюсь сделать) Выбрать я пыталась, как сделать изнутри. А большая кнопка распечатать без всяких сомнений. И никаких открыть в ворде))) |