Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » SPrint

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38

Открыть новую тему     Написать ответ в эту тему

o22



Developer
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SPrint


Попробовав несколько программ для печати из ДОС-приложений на лазерниках, понял, что быстрее напишу свою, чем найду что-то подходящее, тем более, что неудобно подсовывать пользователям крекнутую программу.
Что мне не понравилось, например, в DOSPrn (именно в топике обсуждения этой программы находится оригинал данного сообщения) - отсутствие предварительного просмотра и автоматического масштабирования.
Свою программу склепал за пару дней (правда так как с момента этого сообщения уже прошло больше 3-х лет, то суммарные затраты на разработку гораздо больше - 29.01.2007), поэтому не обессудьте.
Делал под свои запросы, что меня не интересовало, не наворачивал.
Пожелания и предложения по программе: (можете добавлять сами, я "отфильтрую")
- вставка изображения (типа логотип);
- высокий шрифт (если встречается соответствующая последовательность или рассчитанный размер шрифта слишком мал) - вообще-то предложение очень хорошее, но пока сложнореализуемое при данном подходе - в RichEdit нет понятия "высота шрифта", только размер, который подразумевает изменение высоты и ширины одновременно, но как для печати без предварительного просмотра и с ограниченными возможностями реализовать можно (o22)
- обработка esc-последовательностей, отвечающих за междустрочное расстояние.
- в настройки программы добавить опцию "только чтение" для предпросмотра
- в настройки программы добавить опцию "как есть" -  забирать с lpt (или с файла, в случае prn2file) и отправлять на usb, вообще ничего не обрабатывая.
- опция "закрыть после печати"
Вопросы и пожелания высказываем здесь или отсылаем на мыло ww2$ukr.net ($=@)
Если пишете на мыло, то обязательно пишите в теме SPrint - так как адрес общедоступный, то на него помимо ваших писем идет куча спама. И шансы быть прочитанными у письма без темы или с темой "проблема" или "помоги", сами понимаете, невелики.



Благодаря vamh, программу теперь можно скачать и отсюда: http://kashary.ru/downloads/SPrint.zip | http://kashary.ru/downloads/sprint_setup.exe
Размещение на этом ресурсе последней версии зависит от vamh В любом случае на оффсайте она появляется раньше, если об этом не сказано отдельно.
 
Внимание! Сайт с программой переехал. Новый адрес http://sprint.inf.ua
 
Проект закрыт.  
В связи с тем, что мой интерес к программе давно исчерпался (так как нет необходимости в печати из ДОС-приложений), программа больше развиваться и сопровождаться не будет.
Я разместил сайт на другом хостинге, так как на предыдущем ее размещение для меня стало финансово нецелесообразным, а просто его закрыть, не оставив возможности скачать программу, было-бы не очень красиво.
Спасибо всем, кто способствовал в развитии программы, прошу прощения у тех, кому (особенно  в последнее время) не отвечал на письма. Такова жизнь.

     

Всего записей: 2536 | Зарегистр. 03-10-2002 | Отправлено: 09:25 05-09-2003 | Исправлено: o22, 01:20 12-11-2017
Sergey_Demchuk



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
o22

Цитата:
Нужны-ли такие опции программе ? Вам решать. Если будет очень много желающих - включу в "план". Реализацию не обещаю

Да это было бы здорово. Просто есть такая нужда, весь текст не нужен, скажем таблица в досе набрана на кучу столбцов, подгонять текст, так он будет совсем не тот, крошечный, чтобы все уместилось, а реально заполняются только первые несколько колонок. В ДОСпрн есть простенькая опция, обрезать остаток строки, которая не влазит на листок, или переносить на другую строчку.
 

Всего записей: 3551 | Зарегистр. 16-12-2002 | Отправлено: 16:17 30-12-2005
maxud

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
o22
Та программа ставит символ отрыва даже для единственного листа, по окончании текста (нравится ей так). Но действительно было бы здорово такую ситуацию обрабатывать по особому. И еще эта программа имеет какие-то настройки для LPT принтера и посылает ему (и соотвественно в файл) некие ESC-последовательности. Было бы хорошо их также удалять перед печатью.

Всего записей: 1772 | Зарегистр. 03-01-2003 | Отправлено: 16:32 30-12-2005
o22



Developer
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Sergey_Demchuk

Цитата:
Да это было бы здорово. Просто есть такая нужда, весь текст не нужен, скажем таблица в досе набрана  

Сделаем, тем более, что ничего сложного в этом нет
 
maxud

Цитата:
Но действительно было бы здорово такую ситуацию обрабатывать по особому.

Специфический случай, а мороки много (определить, что перед этим символом некое количество пробелов и убрать их). Врядли где-то кроме этой программы еще кто-то так вставляет переводы строк...
maxud

Цитата:
И еще эта программа имеет какие-то настройки для LPT принтера и посылает ему (и соотвественно в файл) некие ESC-последовательности. Было бы хорошо их также удалять перед печатью.

Ну здесь нужно смотреть что за последовательности. Некоторые программа обрабатывает, некие удаляет, а что у тебя остается ?

Всего записей: 2536 | Зарегистр. 03-10-2002 | Отправлено: 16:43 30-12-2005
nsinel

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
o22

Цитата:
высокий шрифт (если встречается соответствующая последовательность или расчитанный размер шрифта слишком мал) - вообще-то предложение очень хорошее, но пока нереализуемое - в windows нет понятия "высота шрифта", только размер, который подразумевает изменение высоты и ширины одновременно (o22)

 
А как тогда понять информацию из файла Sprint.txt, в котором среди обрабатываемых ESC-последовательностей есть и #27+'W1', что и есть, по-моему, Double Height?
Хочется только, чтобы это стало опцией программы, т.е. не менять печатаемый файл.

Всего записей: 338 | Зарегистр. 18-01-2002 | Отправлено: 17:20 30-12-2005
o22



Developer
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
nsinel

Цитата:
А как тогда понять информацию из файла Sprint.txt, в котором среди обрабатываемых ESC-последовательностей есть и #27+'W1', что и есть, по-моему, Double Height?  

Да, обрабатывет он его, но увеличивает при этом пропорционально и ширину.

Цитата:
Хочется только, чтобы это стало опцией программы, т.е. не менять печатаемый файл.

В смысле игнорировать вообще все Esc-последовательности ? А смысл ?

Всего записей: 2536 | Зарегистр. 03-10-2002 | Отправлено: 17:30 30-12-2005 | Исправлено: o22, 17:31 30-12-2005
maxud

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
o22
>>В смысле игнорировать вообще все Esc-последовательности ? А смысл ?
Скорее надо сделать это опциональным. Или даже как выбор варианта: Удалять все;Обрабатывать известные(те что обрабатываются сейчас), остальные удалять;Обрабатывать известные, остальные оставить как есть.
>>Специфический случай, а мороки много (определить, что перед этим символом  
>>некое количество пробелов и убрать их).  
Ну не так уж и много Если перед символом отрывом страницы все символы непечатные - все их нафиг Вообщем подумать надо.

Всего записей: 1772 | Зарегистр. 03-01-2003 | Отправлено: 16:31 31-12-2005
o22



Developer
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
maxud

Цитата:
Скорее надо сделать это опциональным. Или даже как выбор варианта: Удалять все;Обрабатывать известные(те что обрабатываются сейчас), остальные удалять;Обрабатывать известные, остальные оставить как есть.  

Так дело в том, что их "всех" дохрена  
А как обработать неизвестные  ? На то они и неизвестные.
Как я могу обработать к примеру последовательность #27EL1 если я не знаю существует-ли таковая ? Это все равно что предложить известных преступников сажать в одни тюрьмы, а неизвестных - в другие
maxud

Цитата:
Если перед символом отрывом страницы все символы непечатные - все их нафиг  Вообщем подумать надо.

А пробел - это печатный символ ? А если серьезно, то я не обрабатываю каждую последовательность "индивидуально". Есть список последовательностей. И прогон страницы (#12) - один из многих.
 
Я, конечно, утрирую. При желании можно понабивать все известные последовательности, можно описать их в отдельном файле с возможностью добавления пользователем, можно в конце концов придумать механизм их более-менее достоверного определения (типа эвристического анализа) и удаления... Конечно, все это можно сделать. Только не хочется это делать лишь-бы как. Лучше уж не удалить какую-то ненужную последовательность, чем удалить кусок нужного текста. А времени сделать это качественно, к сожалению, нет. Как появится, может подумаю... Пока - не обещаю.
 

Всего записей: 2536 | Зарегистр. 03-10-2002 | Отправлено: 11:18 03-01-2006
maxud

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
o22
>>А как обработать неизвестные  ? На то они и неизвестные.
Неизвестные обрабатывать вообще не надо. Для этого я и предложил три варианта. И в двух из них обрабатывать известныые.  А неизвестные либо удалить вообще, либо оставить на усмотрение принтера. Или проблема в том, что трудно определить, а это вообще ESC-последовательность?

Всего записей: 1772 | Зарегистр. 03-01-2003 | Отправлено: 15:19 03-01-2006
o22



Developer
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
maxud

Цитата:
Или проблема в том, что трудно определить, а это вообще ESC-последовательность?

Ну конечно. Как для того, чтобы определить в какую тюрьму сажать преступника нужно быть уверенным а преступник-ли это
Что такое Esc-последовательность ? Сочетание от 1 до 4 символов.  
Единственно, что их характеризует однозначно, так это то, что первый, а возможно (но не факт) еще какие-то символы в них имеют код меньше 32.
Как правило, первый символ - с кодом 27 (отсюда и название - esc). А дальше может следовать еще несколько символов. Некоторые - частоиспользуемые последовательности - известны и хорошо задокументированы, некоторые редкоиспользующиеся или воспринимающиеся только определенными моделями принтеров. Причем определенный символ в последовательности может указывать на какое-то свойство этой последовательности и его нельзя описать однозначно. Это может быть, например, число, указывающее на величину межстрочного расстояния.
Опять-таки разговор идет об Esc-последовательностях для Epson-совместимых принтеров, а есть еще  esc-последовательности для HP-принтеров... Там совсем другая кухня.

Всего записей: 2536 | Зарегистр. 03-10-2002 | Отправлено: 16:08 03-01-2006
maxud

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
o22
Жаль что все оказалось так сложно. Тогда вернемся к первоначальному предложению: добавть опцию обрезания/переноса строки если ее длина превышает энное количество символов. Кстати в моем случае (255 символ - отрыв страницы) это (перенос) тоже поможет: ну фиг с ним что отпечатается несколько пустых строк.

Всего записей: 1772 | Зарегистр. 03-01-2003 | Отправлено: 18:40 03-01-2006
BRAttack

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
У меня тоже вроде страница на печать, её печатает и следующий лист просто прогоняет Как я понял это большая проблема, но я уверен - ты сможешь её побороть. Кстати, спасибо, что ответил на мыло. У меня прога просто, которая выдаёт только эскейп последовыательность для принтеров хюлет пакард )))) (впадло раскладку переключать), ну и там особые символы вначале и в конце  страницы. Самая жданная доработка - это решить проблему с протягиванием второго листа или объянить мне идиоту, что я не так делаю
 
Спасибо
 
Это конечно я пошутил на счёт идиота

Всего записей: 7 | Зарегистр. 03-01-2006 | Отправлено: 23:29 03-01-2006
o22



Developer
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
maxud

Цитата:
Жаль  что все оказалось так сложно.

Ну, скажем так, это не так и сложно, но просто я изначально ориентировался когда начинал делать программу, что я и не буду обрабатывать абсолютно все Esc-последовательности. Это скорее приятный бонус - попытаться обратотать несколько известных esc-последовательностей дабы придать документу более приличный вид. Основное-же предназначение программы  - поддержать работу старых ДОС-программ - подхватить, перекодировать и распечатать так, чтобы влезло.
 
maxud

Цитата:
Тогда вернемся к первоначальному предложению: добавть опцию обрезания/переноса строки если ее длина превышает энное количество символов. Кстати в моем случае (255 символ - отрыв страницы) это (перенос) тоже поможет: ну фиг с ним что отпечатается несколько пустых строк.

Это сделаю. Более того, даже попробую сделать более хитрО - если строка длиннее указанного предела, то сначала попытаться убрать впередистоящие пробелы (согласись, что лучше убрать малозначащую пустоту пусть даже в ущерб форматированию документа, чем возможно важную информацию), и лишь только потом если длина строки все равно больше какого-то предела, обрезать хвост. Для твоего случая и волки остануться сыты и овцы целы  
 
BRAttack

Цитата:
У меня тоже вроде страница на печать, её печатает и следующий лист просто прогоняет  Как я понял это большая проблема, но я уверен - ты сможешь её побороть

Я уже предпринимал усилия, чтобы убрать последний прогон листа, но все-равно иногда мне сообщают о том, что прогоняет лист. Нужно для начала смотреть сам файл.  Хотя был случай, когда мне присылали файл и он на моем принтере печатался без прогона...  
 
BRAttack

Цитата:
У меня прога просто, которая выдаёт только эскейп последовыательность для принтеров хюлет пакард )))) (впадло раскладку переключать), ну и там особые символы вначале и в конце  страницы.

Тут тоже есть задумка - сделать что-то типа блок-листа, где каждый сможет перечислить словосочетания, которые следует удалить из исходного документа. Это могут быть как экзотические esc-последовательности так и любой другой "мусор" вплоть до надписей типа "этот документ отпечатан с помощью демо-версии программы бла-бла-бла"  
Я думаю такой вариант многих устроит.

Всего записей: 2536 | Зарегистр. 03-10-2002 | Отправлено: 11:16 04-01-2006
BRAttack

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Да это я писал тебе и на мыло и в форуме. Завтра принесу домой файл и пришлу,а то на работе нет инеа. Наверно понятно, в какой конторе я работаю У нас считаются компьютеры Пент 166 это быстрый компьютер. И это ещё частное предприятие. Короче я в шоке
 
Всё завтра будет файл

Всего записей: 7 | Зарегистр. 03-01-2006 | Отправлено: 01:01 05-01-2006
nsinel

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
o22

Цитата:
Ну, скажем так, это не так и сложно, но просто я изначально ориентировался когда начинал делать программу, что я и не буду обрабатывать абсолютно все Esc-последовательности. Это скорее приятный бонус - попытаться обратотать несколько известных esc-последовательностей дабы придать документу более приличный вид. Основное-же предназначение программы  - поддержать работу старых ДОС-программ - подхватить, перекодировать и распечатать так, чтобы влезло.

 
1. Было бы полезно (как мне кажется) включить в комплект поставки файл, содержащий обрабатываемые ESC-последовательности в готовом к употреблению виде, т.е. бери и копируй проверенную последовательность в свой файл.
 
2. Для кого не трудно, уточните, пожалуйста, в частности шестнадцатиричное значение последовательности #27+'W1' (Double Height). У меня эта последовательность почему-то не обрабатывется. Кстати, указание [#27]w1 в строке инициализации принтера в DOSPRN 1.78 дает то самое давно ожидаемое от Sprint удвоение высоты без изменения ширины.

Всего записей: 338 | Зарегистр. 18-01-2002 | Отправлено: 14:48 05-01-2006
o22



Developer
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
nsinel

Цитата:
Было бы полезно (как мне кажется) включить в комплект поставки файл, содержащий обрабатываемые ESC-последовательности в готовом к употреблению виде, т.е. бери и копируй проверенную последовательность в свой файл

Не совсем понял для чего это ?
nsinel

Цитата:
Для кого не трудно, уточните, пожалуйста, в частности шестнадцатиричное значение последовательности #27+'W1' (Double Height). У меня эта последовательность почему-то не обрабатывется. Кстати, указание [#27]w1 в строке инициализации принтера в DOSPRN 1.78 дает то самое давно ожидаемое от Sprint удвоение высоты без изменения ширины

Боюсь ошибиться, но DOSPRN (его я смотрем еще года 2 назад до того как написал эту программу, поэтому могу ошибиться) действует по принципу перекодировки файла и замены Epson-овских последовательностей на HP-овские. И при этом ему наплевать влезет-ли такой файл в конце концов в лист бумаги. Предпросмотра при этом там нет, сделать его скорее всего, очень сложно, может даже невозможно, так как что выйдет на выходе знает один принтер.
Основное-же предназначение SPrint-а что-бы все обязательно влезло, поэтому размер шрифта используется исходя из размера текста в первую очередь, а не исходя из esc-последовательностей в нем. При этом все это мы видим визуально посредством представления текста в RichEdit (RTF) формате.  
Да, в HP-последовательностях есть таковая, которая делает двойную высоту текста, но в RichEdit и во всех стандартных компонентах такого понятия нет. Кстати, что-то подобное есть в Ворде и если-бы мне попался компонент, который поддерживает двойную высоту текста, то я-бы ее обязательно сделал. Но такого компонента мне не встречалось даже среди платных. А разрабатывать его самому - слишком накладно для такой работы.
Можно было-бы подключить к этому делу Ворд, как OLE-контейнер, но во-первых это-бы сделало программу более неповоротливой, во-вторых потребовало-бы наличия самого Ворда, что по многим причинам неприемлемо.
Поэтому нормального решения с двойной высотой (кроме перехода на DOSPRN) я пока не вижу. Если у кого на основании вышесказанного появятся какие-то конструктивные идеи и предложения - пожалуйста.

Всего записей: 2536 | Зарегистр. 03-10-2002 | Отправлено: 19:23 05-01-2006
o22



Developer
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Версия от 10.01.2006
  - Появилась настройка "Ограничение длины строки", а также варианты действий,  когда длина строки превышает указанное значение (обрезать излишек - переносить на следующую строку);
  - так как количество настроек растет, страница Настройки разбита на 2 подстраницы "Параметры работы программы" и "Параметры обработки файлов";
  - завершающий прогон бумаги удаляется также в случае, если после него есть пустые строки;
  - не запоминались некоторые настройки - исправлено;
 
Ссылка на страницу закачки - в шапке.

Всего записей: 2536 | Зарегистр. 03-10-2002 | Отправлено: 13:10 10-01-2006
Sergey_Demchuk



Silver Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Программа похудела на 7 кило!
Спасибо, будем пробовать....

Всего записей: 3551 | Зарегистр. 16-12-2002 | Отправлено: 14:05 10-01-2006
WARTBURG



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доброго времени суток!
 
По ходу использования программы возникли следующие пожелания.
Хотелось бы чтобы в программе была реализована возможность вместо принтера выводить полученный файл во внешний текстовый редактор (например Word или SWriter {OpenOffice}).
Я раньше подобное реализовывал с помощью ярлычка с подобной строчкой:
"C:\Program Files\OpenOffice.org 2.0\program\swriter.exe" c:\111.txt
Хотелось бы в поле выбора принтера выбрать например Word и чтобы в нем открылся сформированный SPrint-ом RTF файлик.
Для чего это нужно, ну хотя бы для того чтобы текст отровнять по ширине (и много других полезностей).
 
Возможно это еще кому-нить может пригодиться.

Всего записей: 31 | Зарегистр. 29-03-2005 | Отправлено: 22:39 18-01-2006
o22



Developer
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
WARTBURG
У меня была как-то идея на этот счет, правда было это связано с тем, чтобы форматировать файл прямо в Ворде, но собственный RichEdit хоть и имеет меньше возможностей по оформлению, но зато всегда под рукой.
А сейчас можно сохранить файл, как RTF, а потом открывать его в Ворде, но согласен, что это лишние телодвижения.
Идея неплохая, можно и сделать. Позже. Занесу в план (в шапке).
Пока-же в ближайшее время выйдет версия в которой много других изменений, в частности пользовательские кодировки, возможность выбрать другой шрифт и другое ...  
Следите за анонсами.

Всего записей: 2536 | Зарегистр. 03-10-2002 | Отправлено: 10:54 19-01-2006
Cacka



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
o22
скажите, а чем ваш prn2file.com отличается от DOSPrn'овского?

Всего записей: 115 | Зарегистр. 12-07-2005 | Отправлено: 14:20 19-01-2006
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38

Компьютерный форум Ru.Board » Компьютеры » Программы » SPrint


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru