1С Печать PDF

1. user612919_maxim 13.01.20 17:11 Сейчас в теме
Всем привет.
Подскажите.
-Как реализовать печать pdf файлов из каталога на диске, без предварительного просмотра. Сразу на принтер.
-Так же интересует как указать номер страницы для печати.
-И еще интересует как распечатать pdf файл из временного хранилища
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. accounting_cons 755 14.01.20 07:18 Сейчас в теме
(1)Позовите специалиста.
3. user612919_maxim 14.01.20 10:48 Сейчас в теме
(2)Такие гениальные ответы я видел только на мисте
4. Xershi 1484 14.01.20 11:33 Сейчас в теме
(3) параметры печати можно задать в табличном документе. В остальном это настройка принтера.
Вопрос у вас абсурдный для программиста, поэтому такие и ответы!
6. user612919_maxim 14.01.20 12:24 Сейчас в теме
(4)Если использовать табличный документ, тогда ведь изменится размер изображения?
5. user612919_maxim 14.01.20 12:21 Сейчас в теме
(1)Рас уж задал вопрос, отвечу сам. Может кому пригодится.

1) Можно распечатать посредствам установленных программ:foxit reader, adobe acrobat reader или других для работы с pdf файлами
С помощью программы по умолчанию.
Shell = Новый COMОбъект("Shell.Application");
Shell.ShellExecute(ПутьКФайлу, "", "", "print", 1);

Или указать программу
AdobeReader = Новый Файл("C:\Program Files (x86)\Adobe\Acrobat Reader DC\Reader\AcroRd32.exe");
ЗапуститьПриложение("""" + AdobeReader.ПолноеИмя + """ /o /t """ + ФайлPDF.ПолноеИмя + """ """ + ИмяПринтера + """");
Параметры
/0 -- Не открывать диалоговое окно приложения
/t Распечатать файл на указанном принтере. Можно без этого параметра, тогда будет принтер по умолчанию.
2) Придумал способ только с сохранением в файл затем печатью через внешнюю программу. В моей ситуации проще хранить в каталоге на диске, чем в внешних файлах 1с
3) Не нашел решению. Буду использовать файлы с 1 страницей
(1)
zhry; user640247; +2 Ответить
7. Xershi 1484 14.01.20 12:35 Сейчас в теме
(5) какой вопрос такой ответ.
Зачем программисту 1С такой геморрой?
Идите в эникейщики там такие вопросы решают как зоопарки скриптами запускать.

Правильно поставленный вопрос уже половина решения.
Как на уровне ОС работать с такими файлами?
Как уже написали, чем ком, через запуск командной строки, частный случай запустить приложение.
Через скрипты частный случай пауершел.
Только это все прослойки и требуют спец знаний в этих областях! Такие вопросы решают сисадмины.
dnikolaev; +1 Ответить
8. user612919_maxim 14.01.20 12:47 Сейчас в теме
(7)Ну вот.. очевидный представитель мисты. Срач, срач.
Если знаешь как лучше - советуй.
9. Xershi 1484 14.01.20 12:54 Сейчас в теме
(8) вы даже не читаете что вам пишут!
10. lefthander 14.01.20 13:03 Сейчас в теме
(8)Обратился к сисадмину он мне выдал код.
	pdftoprinter "D:\1.pdf" "HP Color LaserJet 5550"


Я его адаптировал к 1С
 СтрокаКоманды = "pdftoprinter.exe """ +ИмяФайла + """ ""RICOH SP 220Nw DDST""";
	
ЗапуститьПриложение(СтрокаКоманды, "C:\Windows\System32\",Истина, КодВозврата);


Всех делов ;)
IrinaBelVlad; +1 Ответить
11. user612919_maxim 14.01.20 13:16 Сейчас в теме
(10)Спасибо за совет.
Я нашел решение, выше писал. Конечно лучше бы средствами 1с все сделать, но мне нужно не искажать исходный файл при печати.
14. IrinaBelVlad 17.11.20 21:14 Сейчас в теме
(10) работает хорошо, спасибо! Ничего не открывается лишнего, печать идет. Из минуса, только то, что за 10с отрабатывает.
15. alul 02.06.23 14:01 Сейчас в теме
(7) Вы вроде грамотный специалист, и такой ответ от Вас.. не ожиданно.
Я зашел по теме, чтоб посмотреть не придумали ли сами одинэсовцы что-то нового в последних платформах...
16. user1619761 02.06.23 14:18 Сейчас в теме
(15) добрый день. У них появился метод Новый ДокументPDF, доступен с версии 8.3.22
17. alul 02.06.23 14:33 Сейчас в теме
(16)
(16)
Новый ДокументPDF

Спасибо, для "создания" уже юзаю, искал для печати большого количества внешних файлов PDF.
12. user640247 14.01.20 14:57 Сейчас в теме
(5) я тоже так делала как раз недавно..
Shell = Новый COMОбъект("Shell.Application");
Shell.ShellExecute(ИмяФайла,""""+ИмяПринтера+"""","","printto",0);
13. v3rter 14.01.20 23:30 Сейчас в теме
Вроде бы Foxit Reader версий 6.2 или >=9.4 тоже умеет, но не проверял.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот