Обработка распознает (читает) PDF- файл

21.04.16

Интеграция - Внешние источники данных

Обработка распознает (читает) PDF- файл

Скачать файлы

Наименование Файл Версия Размер
ПрочитатьПДФ.epf
.epf 409,39Kb
833
.epf 409,39Kb 833 Скачать
ПрочитатьПДФ_УФ.epf
.epf 410,85Kb
99
.epf 410,85Kb 99 Скачать

Пригодится тем, кто хочет вытащить текстовую информацию из PDF - файла.

 

 

	ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
    ДиалогОткрытияФайла.Фильтр = НСтр("ru = ""Текст""; en = ""Text""")+"(*.pdf)|*.pdf";
    ДиалогОткрытияФайла.Заголовок = "Выберите файл";
    ДиалогОткрытияФайла.ПроверятьСуществованиеФайла = Истина;
    Если Не ДиалогОткрытияФайла.Выбрать() Тогда
        Возврат;
    КонецЕсли;
    ФайлPDF = ДиалогОткрытияФайла.ПолноеИмяФайла;
    
	КаталогВременныхФайлов = КаталогВременныхФайлов();
	
	МакетУтилиты = ОбработкаОбъект.ПолучитьМакет("pdftotext");
	Адрес = ПоместитьВоВременноеХранилище(МакетУтилиты, Новый УникальныйИдентификатор);
	ФайлУтилиты1 = КаталогВременныхФайлов + "pdftotext.exe";
    ДанныеХранилища = ПолучитьИзВременногоХранилища(Адрес);
	УдалитьИзВременногоХранилища(Адрес);
	ДанныеХранилища.Записать(ФайлУтилиты1);
		
	МакетУтилиты = ОбработкаОбъект.ПолучитьМакет("xpdfrc");
	Адрес = ПоместитьВоВременноеХранилище(МакетУтилиты, Новый УникальныйИдентификатор);
	ФайлУтилиты3 = КаталогВременныхФайлов + "xpdfrc";
    ДанныеХранилища = ПолучитьИзВременногоХранилища(Адрес);
	УдалитьИзВременногоХранилища(Адрес);
	ДанныеХранилища.Записать(ФайлУтилиты3);
	
	Текст = Новый ТекстовыйДокумент();
	Текст.Записать(КаталогВременныхФайлов +"temp.txt") ;

	pdf = ФайлPDF;
	txt = КаталогВременныхФайлов + "temp.txt";
	Команд = КаталогВременныхФайлов+"pdftotext.exe " + pdf + " " + txt; 
	ЗапуститьПриложение(Команд,,Истина);

	Текст = Новый ЧтениеТекста(КаталогВременныхФайлов+"temp.txt", КодировкаТекста.UTF8);
	Стр = Текст.ПрочитатьСтроку();
	Пока Стр <> Неопределено Цикл 
		Сообщить(Стр);	
		Стр = Текст.ПрочитатьСтроку();
	КонецЦикла;   
	Текст.Закрыть();
 
	УдалитьФайлы(КаталогВременныхФайлов + "temp.txt");
	УдалитьФайлы(КаталогВременныхФайлов + "pdftotext.exe");
	УдалитьФайлы(КаталогВременныхФайлов + "xpdfrc");

 

 

 

pdf распознать прочитать

См. также

Перенос данных из Парус 10 в ЗГУ ред.3

Внешние источники данных Кадровый учет Файловый обмен (TXT, XML, DBF), FTP Обмен между базами 1C Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 10 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

60000 руб.

05.10.2022    9155    9    8    

10

Перенос данных из Парус 8 в ЗГУ 3

Зарплата Внешние источники данных Бюджетный учет Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 8 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

84000 руб.

19.08.2020    22349    18    1    

21

Автоматическая многопоточная выгрузка данных 1С 8.3 в БД Clickhouse и MS SQL (для работы с данными 1С в BI-системах)

Внешние источники данных Платформа 1С v8.3 Управляемые формы Анализ и прогнозирование Конфигурации 1cv8 Узбекистан Беларусь Кыргызстан Молдова Россия Казахстан Платные (руб)

Готовое решение для автоматизированной выгрузки данных из 1С 8.3, а также MS Excel в базу данных ClickHouse, а также в Microsoft SQL для работы с данными 1С в Yandex Datalens, Visiology, Apache Superset (и не только) - "Экстрактор данных 1С в BI". Решение отлично работает со всеми типовыми (и не только) конфигурациями 1С 8.3 для управляемых форм. Gозволяет автоматизировать работу бизнес-аналитика по ежедневной выгрузке данных из 1С в БД ClickHouse для последующей работы с этой БД в Yandex Datalens/ Система полностью автоматизирует работу с хранилищем данных в БД Clickhouse/MS SQL. Не надо быть программистом, чтобы одной кнопкой получать любые данные из 1С в Вашей BI-системе

230000 руб.

15.11.2022    12909    11    47    

28

Перенос данных из Парус 7.хх в ЗГУ ред.3

Внешние источники данных Зарплата Бюджетный учет Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 7.хх учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

24000 руб.

24.04.2017    48628    96    159    

86

Перенос начальных остатков из Парус 7.71 в БГУ

Внешние источники данных Взаиморасчеты Учет ОС и НМА Логистика, склад и ТМЦ Бюджетный учет Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 2.0 1С:Бухгалтерия государственного учреждения Государственные, бюджетные структуры Россия Бюджетный учет Платные (руб)

Перенос словарей и начальных остатков из ПП Парус-Бухгалтерия Бюджет 7.71 в 1Сv8 БГУ2. Заполнение словарей и документов по вводу начальных остатков. Не требуется установка ПП Парус7. Возможна дозагрузка. Позволит автоматически и наиболее полно ввести данные в программу для начала работы. 

15600 руб.

08.12.2011    81470    128    123    

146

Перенос данных из Парус 10 (Торнадо) в ЗГУ ред.3 через Excel

Внешние источники данных Загрузка и выгрузка в Excel Зарплата Бюджетный учет Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате из Парус 10(Торнадо) учреждений через файлы Excel в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ). В принципе, обработка может быть использована для загрузки из файлов Excel, полученных из любых информационных систем.

24000 руб.

16.11.2018    29979    20    31    

21
Отзывы
3. John_d 5204 05.06.12 13:45 Сейчас в теме
На практике использую ее так. Эту обработку включил в конфигурацию, процедуру из формы прописал в модуле, как экспортную функцию с параметром полное имя файла. И из любого места конфигурации вызываю ее для поиска серийного номера который спрятан в тексте pdf файла.
Остальные комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Serj1C 483 05.06.12 12:47 Сейчас в теме
почему бы в описании не рассказать про механизм получения текста?
dour-dead; Open-BS; free-lancer-2018; necropunk; +4 Ответить
2. cool.vlad4 2 05.06.12 13:01 Сейчас в теме
(1) автор использует xpdf - а также наклепал свою программу, которая просто запускает pdftotext без консольного окна. когда мне надо было рендерить в картинки pdf , я использовал подобным образом pdftoimage, потом написал ВК на шарпе + xpdf, потом и этот способ не устроил , сделал клиенту на native api и на mupdf.

PS нафига я эту муру скачал?
Irwin; Chronic; maxopik2; sasha777666; DrAku1a; ZOMI; SirYozha; slavik27; Yashazz; адуырщдв; pumbaE; Serj1C; +12 Ответить
3. John_d 5204 05.06.12 13:45 Сейчас в теме
На практике использую ее так. Эту обработку включил в конфигурацию, процедуру из формы прописал в модуле, как экспортную функцию с параметром полное имя файла. И из любого места конфигурации вызываю ее для поиска серийного номера который спрятан в тексте pdf файла.
4. K_A_O 538 05.06.12 15:43 Сейчас в теме
А нельзя поставить PDF IFilter и использовать ИзвлечениеТекста?
pbahushevich; +1 Ответить
5. John_d 5204 05.06.12 18:27 Сейчас в теме
+ этой обработки, что ничего не надо ставить.
6. IamAlexy 344 06.06.12 15:21 Сейчас в теме
со сканированными PDF (картинка) облом ?
7. cool.vlad4 2 06.06.12 15:26 Сейчас в теме
(6) конечно, xpdf парсер pdf, а не распознавалка картинок)))
10. IamAlexy 344 06.06.12 16:33 Сейчас в теме
(7) хых.. большинство ПДФов котрые гуляют по емейлам - это "картинки" которые были нагенерены всякими биопдф или вообеще тупые сканы...
13. cool.vlad4 2 07.06.12 15:42 Сейчас в теме
(10) ну дык универсальной распознавалки не существует, - если очень хочется можно пробовать всякие бесплатные OCR системы ,но сразу скажу они все как правило отстойные в данной задаче. Можно купить fine reader (у него есть сервер автоматизации FineReader.Application) и прикрутить к 1С-ке. Но и он будет не всегда работать как надо(будут ошибки распознавания). Стоит задуматься, а правильно организована работа, если от распознавания неких документов зависит её процесс? Может лучше перевести все в электронный оборот и не париться?
simuljakr; veretennikoff; Бурухтан Второй Второй; 1cspecialist; +4 Ответить
74. AR18 30.01.19 17:19 Сейчас в теме
У меня ругается
{ВнешняяОбработка.СканПДФ.МодульОбъекта(6)}: Ошибка при вызове метода контекста (ПолучитьМакет)
МакетУтилиты = ПолучитьМакет("pdftotext");
по причине:
Недопустимое значение параметра (параметр номер '1')
75. AR18 30.01.19 17:21 Сейчас в теме
У меня ругается
{ВнешняяОбработка.СканПДФ.МодульОбъекта(6)}: Ошибка при вызове метода контекста (ПолучитьМакет)
МакетУтилиты = ПолучитьМакет("pdftotext");
по причине:
Недопустимое значение параметра (параметр номер '1')...
8. пользователь 06.06.12 15:34
Сообщение было скрыто модератором.
...
9. CheBurator 3119 06.06.12 15:46 Сейчас в теме
текст извлечь неинтересно.. вот если бы она таблицы извлекала корректно... причем разного вида... с разлиновкой и без... вот это да.. было бы мощно...
15. CaSH_2004 372 08.06.12 11:34 Сейчас в теме
(9) В любом случае полезная вещь, если у кого-то есть круче - выкладывайте!
Автор - молодец! вроде такого тут не выкладывали еще
16. cool.vlad4 2 08.06.12 11:52 Сейчас в теме
(15) в чем он молодец? в том, что нарушает лицензионное соглашение http://www.foolabs.com/xpdf/about.html ?
18. John_d 5204 08.06.12 12:12 Сейчас в теме
19. cool.vlad4 2 08.06.12 12:16 Сейчас в теме
(18) pdftotext что ли? издеваешься? там черным по белому написано
If you are redistributing unmodified copies of Xpdf (or any of the Xpdf tools) in binary form, you need to include all of the documentation: README, man pages (or help files), and COPYING. The README file contains a pointer to a web page with the source code, which satisfies the GPL requirement as far as I am concerned. You are, of course, welcome to distribute the source code as well.

т.е. надо было включить всю документацию, файлы COPYING, README , а главное ссылку на исходники автора. мне-то как-то все равно, но меня бесит одно , в публикации об этом ни слова, ни ссылки, типа ты сам это сделал, хотя вся твоя работа заключается просто в вызове чужой программы.
artbear; jan27; +2 Ответить
20. John_d 5204 08.06.12 12:28 Сейчас в теме
(19)эту программу нашел в таком виде как она у меня в макете. Никаких README там не было, где я ее нашел.
Если разработчик ее http://www.foolabs.com/xpdf, то пожалуйста вот ссылка на разработчика.
22. CaSH_2004 372 08.06.12 18:30 Сейчас в теме
(19) Ну тут не все твоего уровня, я так вообще не читаю эти Readme ни на английсом ни на русском :)
Зато человек работал и делиться результатом. Объясни ошибку ему, раз он не в курсе. А наезжать то за что? Он же милионов на бесплатной чужой разработке не заработал.
Хотя я согласен что нужно указывать подробно
11. eugen91 07.06.12 13:42 Сейчас в теме
То что надо! Долго искал подобную обработку
12. OldthiefXXX 153 07.06.12 15:24 Сейчас в теме
Сам сижу над такой же разработкой, загрузка прайсов из PDF с картинками, с качаю гляну.
14. OldthiefXXX 153 08.06.12 10:12 Сейчас в теме
Заканчиваю писать свой комбайн обработки PDF файла выложу, будет по интереснее, там с картинками с правильными таблицами.
17. John_d 5204 08.06.12 12:12 Сейчас в теме
(14)GNU General Public License
http://ru.wikipedia.org/wiki/GNU_General_Public_License
я название программы в макете не скрыл.
21. OldthiefXXX 153 08.06.12 18:06 Сейчас в теме
Ладно вам не судите строго то человек все таки старался.
23. navi 12.06.12 14:12 Сейчас в теме
А таблицу нормально распознает?
24. John_d 5204 14.06.12 17:35 Сейчас в теме
(23)распознает только текст
25. brunet 39 14.06.12 20:10 Сейчас в теме
легче будет если конвертировать pdf в excel,word или тексовый файл.
26. _LEV_ 15.06.12 16:33 Сейчас в теме
OldthiefXXX (файл скачал) 08.06.12 10:12URL
Заканчиваю писать свой комбайн обработки PDF файла выложу, будет по интереснее, там с картинками с правильными таблицами.

Давай, будем ждать твоего шедевра;)
27. Jonny_wk 17.06.12 19:33 Сейчас в теме
Надо будет попробовать... потом дам оценку
28. fibrsb 19.06.12 10:39 Сейчас в теме
Хотелось бы более детального описания. А вещь полезная.
29. Spacer 355 19.06.12 11:27 Сейчас в теме
Заглянул в код этой обработки и обнаружил нечто несуразное:

Процедура Кнопка1Нажатие(Элемент)

	...
	
	МакетУтилиты = ОбработкаОбъект.ПолучитьМакет("pdftotext");
	Адрес = ПоместитьВоВременноеХранилище(МакетУтилиты, Новый УникальныйИдентификатор);
	ФайлУтилиты1 = КаталогВременныхФайлов + "pdftotext.exe";
        ДанныеХранилища = ПолучитьИзВременногоХранилища(Адрес);
	УдалитьИзВременногоХранилища(Адрес);
	ДанныеХранилища.Записать(ФайлУтилиты1);
	
КонецПроцедуры
Показать


МакетУтилиты - это ДвоичныеДанные. Зачем их гонять во временное хранилище и обратно, когда их можно сразу записать в файл на диск?
30. Armando 1399 23.06.12 15:15 Сейчас в теме
IFilter PDF не умеет что ли?
31. John_d 5204 25.06.12 15:10 Сейчас в теме
(30)+ этой обработки, что ничего не надо ставить.
32. orehova123 25.06.12 17:21 Сейчас в теме
ну раз ничего не надо ставить дополнительного, то плюсую. скачаю позже, посмотрю, уже есть мысли, куда это можно прикрутить
33. John_d 5204 25.06.12 17:41 Сейчас в теме
(32)я вот так прикрутил)(3)
34. fnv 28.06.12 16:48 Сейчас в теме
Интересно, спасибо.
35. Sasha255n 30.06.12 14:36 Сейчас в теме
Плюс если ничего не надо дополнительного А вообще то я думал что AcrobatReader бесплатное приложение наверное ошибался.
36. maria7777777 14 27.07.12 11:44 Сейчас в теме
хорошая обработка, как то что доктор прописал. правда тестировала на большом pdf файлике - долго ждать пришлось
37. sumixam 27.07.12 15:24 Сейчас в теме
обработка хорошая пригодилась
38. Jon2011 80 18.09.12 06:58 Сейчас в теме
Если я встрою эту обработку в свою конфигурацию, куда нужно записывать авторскую информацию? И чью?
39. Anna_G 28.09.12 10:16 Сейчас в теме
Спасибо. Довольно интересное решение.
40. brunet 39 06.11.12 18:21 Сейчас в теме
а нельзя просто переформировать файл в другой текстовый формат. программ для этого в интернете 1000.
41. eugen91 06.11.12 18:31 Сейчас в теме
О! то что искали, будем пробовать, спасибо. Позже поделюсь опытом использования.
42. пользователь 07.11.12 12:44
Сообщение было скрыто модератором.
...
43. Rad90210 13 13.11.12 14:21 Сейчас в теме
Плюс! Но неплохо было бы развить идею в работу с документами ...
44. SergeyGladyshev 26.11.12 12:12 Сейчас в теме
очень полезная обработка, автору респект!
45. eugen91 04.12.12 20:13 Сейчас в теме
Можно извлечь непосредственно сам текст? как дела обстоят с графиками?
46. Sasha255n 10.12.12 23:09 Сейчас в теме
Да как раз примерно это я и искад попрогбую прикрутить к свей базе.
47. eugen91 04.01.13 13:19 Сейчас в теме
Не вижу смысла данной обработки
48. SeverBaP 4 21.02.13 11:46 Сейчас в теме
Все что доктор прописал хотя пришлось немного под свои нужды переделать
49. pavel_pss 289 08.04.13 15:53 Сейчас в теме
Спасибо, то что нужно и спасибо за открытй код.
50. ValeriTim 20 28.08.13 13:56 Сейчас в теме
51. LanaSN 12.09.13 11:47 Сейчас в теме
Спасибо, очень нужная обработка, экономит время для открытия таких файлов в других программах!
52. mzelensky 53 23.10.13 09:12 Сейчас в теме
Замечательнейшая штуковинка!
53. pose 24.10.13 16:18 Сейчас в теме
Спасибо, то что нужно .
54. MakcTLT63 5 15.11.13 08:38 Сейчас в теме
Не понял что делает обработка? Распознает текст? Реализован FineReader на 1с?
зы. Обработку не качал..
55. MakcTLT63 5 18.11.13 11:30 Сейчас в теме
Почитал комментарии, вопрос снимается.
56. ded20ded 18.11.13 14:10 Сейчас в теме
Спасибо, большое, то что как раз сегодня понадобилось
57. пользователь 19.11.13 10:57
Сообщение было скрыто модератором.
...
58. Dzenn 869 02.12.13 15:34 Сейчас в теме
Скорее всего, внутри обработки простое ИзвлечениеТекста(), о котором просто ещё не все знают
59. Lerusena 9 08.12.13 15:27 Сейчас в теме
От души огромное спасибо! С небольшой дорабткой помогла решить ну оочень давно не решаемую проблему, освободила от рутины и дала кучу свободного времени! Огромный респект!!!!
60. jonybanchicov 13 09.12.13 18:41 Сейчас в теме
61. undo 29.12.13 20:35 Сейчас в теме
Хорошее простое решение достаточно простой задачи, простой на первый взгляд, и достаточно часто нужно извлечь текст из PDF, а до графики это уже второй момент. То что ничего ставить дополнительно не нужно это хорошо.
62. Alfer 10.01.14 08:47 Сейчас в теме
спасибо очень нужно
63. Alfer 17.01.14 08:50 Сейчас в теме
не открывается Неверный формат хранилища данных 'file://C:/ПрочитатьПДФ.epf
64. Alfer 17.01.14 08:52 Сейчас в теме
скачалось всего 324K - не могли бы вы прислать на почту повторно ( а то я пустой)
65. John_d 5204 29.01.14 17:44 Сейчас в теме
Протестировал файл обработки. он нормально скачивается и работает.
66. пользователь 23.02.14 23:50
Сообщение было скрыто модератором.
...
67. DrAku1a 1678 08.12.14 14:44 Сейчас в теме
Почему модераторы пропускают абсолютно ненужные публикации с описанием обработки - в одну строку?
spenser123; +1 Ответить
68. NOVOPRO 11.12.14 07:04 Сейчас в теме
Лажа полная, используй стандартные проги и все нормально будет
69. NOVOPRO 11.12.14 07:28 Сейчас в теме
Забавная штука гоняет, данные по сто раз из одного раздела в другой...... Только съедает системные ресурсы:

МакетУтилиты = ОбработкаОбъект.ПолучитьМакет("pdftotext");
= ПоместитьВоВременноеХранилище(МакетУтилиты, Новый УникальныйИдентификатор);
ФайлУтилиты1 = КаталогВременныхФайлов + "pdftotext.exe";
ДанныеХранилища = ПолучитьИзВременногоХранилища(Адрес);
УдалитьИзВременногоХранилища(Адрес);
ДанныеХранилища.Записать(ФайлУтилиты1);
.............................
70. Alexey_A 8 08.12.15 10:48 Сейчас в теме
71. Scottlinch 9 13.08.18 12:15 Сейчас в теме
Спасибо. Сегодня пригодилась =) Вот бы комбайн кто допилил. Что бы с картинками и с таблицами можно было работать нормально.
72. a3a 15 29.01.19 14:44 Сейчас в теме
Коллеги, не совсем понятно.
у меня файл из 3 страниц, а обработка распознала только первую 1 страницу.
у всех так?
73. John_d 5204 29.01.19 15:01 Сейчас в теме
(72) Добрый день, протестировал. Распознает все страницы.
Для теста использовал этот файл.
Прикрепленные файлы:
CryptoProPDF_UserGuide.pdf
76. a3a 15 31.01.19 05:54 Сейчас в теме
(73) все. разобрался. у меня была большая таблица переходящая на следующую страницу.
В обработке был код

Если КодСимвола(Стр) = 12 Тогда
Прервать;
КонецЕсли;

так вот, на второй странице продолжающаяся таблица как раз возвращала КодСимвола(Стр) = 12.
Переписал на следующий и стало работать нормально.

Если КодСимвола(Стр) = 12 Тогда
// Прервать;
Стр = Текст.ПрочитатьСтроку();
КонецЕсли;
Irwin; John_d; +2 Ответить
77. пользователь 31.01.19 09:51
Сообщение было скрыто модератором.
...
78. user817897 2 14.01.20 12:12 Сейчас в теме
79. Defor 107 29.05.21 18:53 Сейчас в теме
Полезная вещь, очень пригодилась идея.
Выкинул из кода все лишнее, оставил самое необходимое:
Процедура Кнопка1Нажатие(Элемент)

	ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Открытие);
    ДиалогОткрытияФайла.Фильтр = НСтр("ru = ""Текст""; en = ""Text""")+"(*.pdf)|*.pdf";
    ДиалогОткрытияФайла.Заголовок = "Выберите файл";
    ДиалогОткрытияФайла.ПроверятьСуществованиеФайла = Истина;
    Если Не ДиалогОткрытияФайла.Выбрать() Тогда
        Возврат;
    КонецЕсли;
    ФайлPDF = ДиалогОткрытияФайла.ПолноеИмяФайла;
    
	КаталогВременныхФайлов = КаталогВременныхФайлов();
	
	МакетУтилиты = ОбработкаОбъект.ПолучитьМакет("pdftotext");
	МакетУтилиты.Записать(КаталогВременныхФайлов + "pdftotext.exe");
	
	МакетУтилиты = ОбработкаОбъект.ПолучитьМакет("xpdfrc");
	МакетУтилиты.Записать(КаталогВременныхФайлов + "xpdfrc");
	
	ТекстКоманды =  КаталогВременныхФайлов + "pdftotext.exe -layout """ + ФайлPDF + """ """ + КаталогВременныхФайлов + "temp.txt""";
	ЗапуститьПриложение(ТекстКоманды, КаталогВременныхФайлов, Истина);
	
	Текст = Новый ТекстовыйДокумент;
	Текст.Прочитать(КаталогВременныхФайлов + "temp.txt", КодировкаТекста.UTF8);
	Текст.Показать();
 
	УдалитьФайлы(КаталогВременныхФайлов + "temp.txt");
	УдалитьФайлы(КаталогВременныхФайлов + "pdftotext.exe");
	УдалитьФайлы(КаталогВременныхФайлов + "xpdfrc");
	
КонецПроцедуры
Показать
Irwin; artbear; +2 Ответить
80. DrAku1a 1678 18.08.21 12:29 Сейчас в теме
Мило...
Прикрепленные файлы:
81. DrAku1a 1678 20.08.21 15:58 Сейчас в теме
(80) Яндекс-браузер блокирует загрузку файла.
Kaspersky IS - видит ошибку в макете 2de316a7-8093-4ead-a214-212b5249f0b1.0
Потыкав макеты - выяснилось, что ругается он на макет hstart.

Вот инфа от Касперского:

RiskTool - легальная программа, которая может быть использована злоумышленниками.

Обладают различными функциями (например, сокрытие файлов в системе, сокрытие окон запущенных приложений, уничтожение активных процессов и т.д.), позволяющей использование их киберпреступниками со злонамеренными целями. Вредоносными не являются.

В отличие от NetTool эти программы предназначены для локальной работы.

Если такая программа установлена на вашем компьютере вами или вашим сетевым администратором, никакой опасности она не представляет.

https://threats.kaspersky.com/ru/class/RiskTool/
82. DrAku1a 1678 24.08.21 10:47 Сейчас в теме
Если кто хочет запускать на сервере (где нет "ЗапуститьПриложение") - то можно так:
	МакетPDFTOTEXT = ОбработкаОбъект.ПолучитьМакет("pdftotext");
	МакетXPDFRC = ОбработкаОбъект.ПолучитьМакет("xpdfrc");
	
	Каталог = КаталогВременныхФайлов();
	Каталог = Каталог + ?(Прав(Каталог, 1)="\", "", "\") + "PDF2TEXT\";
	СоздатьКаталог(Каталог);
	УдалитьФайлы(Каталог+"pdftotext.exe");
	УдалитьФайлы(Каталог+"xpdfrc");
	
	МакетPDFTOTEXT.Записать(Каталог+"pdftotext.exe");
	МакетXPDFRC.Записать(Каталог+"xpdfrc");
	
	УдалитьФайлы(Каталог+"file.pdf");
	ДанныеФайла.Записать(Каталог+"file.pdf");
	
	СтрокаКоманды = "pdftotext.exe -layout ""file.pdf"" ""file.txt""";
	
	///КомандаСистемы(СтрокаКоманды, Каталог);
	WshShell=Новый COMОбъект("Wscript.Shell");
	WshShell.CurrentDirectory = Каталог;
	WshShell.run(СтрокаКоманды, 0, True);
	
	Файл = новый Файл(Каталог+"file.txt");
	Если Файл.Существует() Тогда
		Чтение = новый ЧтениеТекста(Каталог+"file.txt", КодировкаТекста.UTF8);
		Ответ = СтрЗаменить(Чтение.Прочитать(), Символ(12), " "); //$0C - разрыв страницы, при его наличии происходит ошибка передачи строки с сервера на клиент
		Чтение.Закрыть();		
		Возврат Ответ;
	КонецЕсли; 
Показать
Оставьте свое сообщение