Конвертор из PDF

Публикация № 1797287 25.01.23

Разработка - Разработка внешних компонент

native pdf конвертер картинки из текст

Native компонента для рендеринга PDF в картинки, и (или) извлечения текста из PDF файлов.

Предлагаю вашему вниманию Native компоненту для 1С 8.3 для преобразования документа PDF.

Написана на С++ и статически скомпонована  с библиотекой pdfium.  

Данная компонента не требует регистрации. как com. Достаточно сохранить ее на диск из макета. И подключить средствами 1С.

Функции данной компоненты.

1. 

Результат = Компонента.ЗагрузитьPDF(ПутьКФайлу);

Это первое что нужно вызвать.

Возвращаемое значение. Истина если успешно прочитан файл, Ложь  если прочитать не удалось.

2.

КоличествоСтраниц = Компонента.КоличествоСтраницВДокументе;

Получает количество страниц в документе PDF. 

3.

Для х = 0 по КоличествоСтраниц -1 Цикл
	ДвоичныеДанные = Компонента.ПолучитьСтраницу(х);

Получает изображение страницы в формате BMP в виде двоичных данных, далее их можно или сохранить или вставить в макет в виде картинки.

4.

 Текст = Компонента.ПолучитьТекстСтраницы(х);

Получает текст страницы, если страница в PDF имеет в своем составе текстовые блоки

 

Это основные функции, для которых я делал данную компоненту.

Также есть еще функция сохранения страницы в файл.

Компонента.СохранитьКартинку(Номерстраницы,ПолныйПутьКФайлу);

И также можно загрузить изображение( получить двоичные данные)

ДвДанные = Компонента.ЗагрузитьКартинку(ПолныйПутьКФайлу);

 

Основная идея была именно в получении изображении PDF, чтобы можно было вставить их в Табличный Документ. Так как пакетная печать не умеет работать с PDF. 

Ниже как можно вставить изображение в Табличный Документ.

ТабДок = Новый ТабличныйДокумент;
	Если Результат Тогда
		КоличествоСтраниц = Компонента.КоличествоСтраницВДокументе;
		Для х = 0 по КоличествоСтраниц -1 Цикл
			ДвоичныеДанные = Компонента.ПолучитьСтраницу(х);
			Если ДвоичныеДанные <> Неопределено Тогда
				ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
				Область = Макет.ПолучитьОбласть("Изображение");
				Рисунок = Область.Рисунки.Добавить(ТипРисункаТабличногоДокумента.Картинка);
				Рисунок.Высота = 297;
				Рисунок.Ширина = 210;
				Рисунок.РазмерКартинки = РазмерКартинки.Пропорционально;
				Рисунок.ГраницаСверху = Истина;
				Рисунок.ГраницаСнизу = Истина;
				Рисунок.ГраницаСправа = Истина;
				Рисунок.ГраницаСлева = Истина;
				
				Рисунок.Картинка = Новый Картинка(ДвоичныеДанные);
			
				ТабДок.Вывести(Область);
			КонецЕсли;
		
		КонецЦикла;

Также в архиве есть обработка с примером работы с этой компонентой

 

 

Компонента есть под win64 и Win86

Тестировалась на платформе 8.3.22. Работать должно в любых конфигурациях, главное, чтобы платформа поддерживала работу с Native компонентами (все что выше 8.3, должно работать).

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

Наименование Файл Версия Размер
Конвертор из PDF:

.zip 8,99Mb
22
.zip 1 8,99Mb 22 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. info1i 208 25.01.23 23:55 Сейчас в теме
Только для операционной системы Windows?
5. bmk74 220 26.01.23 15:28 Сейчас в теме
(1)Да там написано что только для windows.
2. rusmil 256 26.01.23 06:55 Сейчас в теме
Подскажите, а когда сохраняется текст из PDF, сохраняется ли порядок в текстовом файле таким же как выглядит текст в PDF файле? В какой кодировке извлекается текст?
4. bmk74 220 26.01.23 15:27 Сейчас в теме
(2)В PDF текст может располагаться блоками. Т.е. Половина слева, половина справа...например... Вот в какой последовательности...он его извлечет сказать трудно но скорее всего правило будет сверху вниз и слева направо.
По поводу кодировки...Unicode text string from the page, это из описания извлечения текста..из библиотеки pfdium,судя по всему это UTF16, так как при передаче строки в 1С преобразовывать строку не пришлось. а 1С оперирует именно кодировкой UTF16 так же как и windows. Пробовал специально читать PDF с русскими символами...все корректно читает и показывает в 1С.
3. ixijixi 1474 26.01.23 08:32 Сейчас в теме
Наконец-то годнота на сайте!
6. silverr 12 27.01.23 10:19 Сейчас в теме
Доброго дня! А как насчет таблиц? Может-ли конвертор, или с помощью оного, преобразовать ПечФорму документа в XLS таблицу. Понимаю что напрямую это не получится. Мне пока не удавалось корректно это сделать на многостраничном документе, т.к. на 2-ой и последующих страницах колонки как правило немного смещены относительно шапки на первой странице. Может у кого-нибудь есть свой, более удачный опыт в данном направлении, поделитесь пожалуйста.
7. утюгчеловек 37 09.02.23 17:18 Сейчас в теме
Спасибо за вашу работу!

Планируется ли выложить код, чтобы можно было собрать самостоятельно?
8. bmk74 220 12.02.23 16:16 Сейчас в теме
(7) Добрый день. К сожалению исходники на С не планировал выкладывать... там код не причесан, а такой код не люблю показывать всем :)
9. FeliceYa 5 17.04.23 15:13 Сейчас в теме
Добрый день )
После преобразования в картинку штрихкод искажается до нечитаемости (
Даже визуально видно, что некоторые линии теряются (указано стрелками на скрине), и у некоторых линий меняется толщина.
Может добавить дополнительный параметр, например Масштаб, к методам Загрузки PDF или Получения/Сохранения страницы ?
Прикрепленные файлы:
10. bmk74 220 15.05.23 13:27 Сейчас в теме
(9)Вы когда получаете картинку из двоичных данных...то после этого стандартными средствами 1С можете узнать ее размер.
11. FeliceYa 5 18.05.23 14:48 Сейчас в теме
(10) Вы отвечаете на какой-то другой вопрос, который не был задан... В вопросе было:
После преобразования в картинку штрихкод искажается до нечитаемости (

Речь о DPI конвертации, который нужно передавать как параметр. А разработчик сможет уже самостоятельно подобрать требующееся для его задач значение.
Оставьте свое сообщение

См. также

GGraphics - внешняя компонента для работы с картинками jpg (jpeg), png, bmp, gif, tif

Разработка внешних компонент Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Позволяет автоматизировать работу с картинками. С помощью компоненты можно измерять размер изображений, поворачивать их, наносить водяные знаки, конвертировать из одного формата в другой. Будет очень полезна для интернет-магазинов и всех, кому постоянно требуется работать с различными графическими форматами. Выполнена по технологии NativeAPI. Работает с форматами: jpg (jpeg), png, bmp, gif, tif

3600 руб.

02.09.2010    72546    71    253    

187

Внешняя компонента для сканирования (замена TWAIN-компоненты БСП) (Native Win 32/64)

Разработка внешних компонент Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Внешняя компонента позволяет работать c TWAIN-совместимым оборудованием (сканерами, камерами) . Полностью совместима со стандартной TWAIN-компонентой из БСП и может применяться как ее замена без изменения вызовов, при этом может работать с 64-разрядной платформой, а так же имеет расширенную функциональность, например, сохранение результата непосредственно в PDF без использования сторонних утилит. Прекрасно работает на сервере, тонком клиенте и веб-клиенте (проверена работа в браузерах Google Chrome, Mozilla Firefox и Microsoft Internet Explorer). Работа с PDF основана на проекте PDFium из состава проекта Chromium/Chrome, для работы с TWAIN использован свободный проект twpp https://github.com/xricht17/twpp.

2400 руб.

12.05.2020    21335    110    84    

68

Внешняя компонента печати PDF (Native Win 32/64)

Разработка внешних компонент Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Внешняя компонента позволяет печатать PDF файлы непосредственно из 1С, не используя при этом сторонних программ. Прекрасно работает на сервере, тонком клиенте и веб-клиенте. Основана на проекте PDFium из состава проекта Chromium/Chrome

1500 руб.

17.09.2018    31600    95    121    

102

Внешняя компонента WebSocket для 1С (c поддержкой Authorization token bearer)

Разработка внешних компонент Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Внешняя компонента в виде библиотеки (.dll файл), позволяющая посылать команды и получать ответы по протоколу WebSocket из 1С. Компонента работает только на стороне "клиента".

4440 руб.

22.06.2020    13619    9    26    

14

Внешняя компонента для подключения 1С к телефонии Asterisk

Разработка внешних компонент Телефония, SIP Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Внешняя компонента выполнена по технологии Native API для 1С 8.х, обеспечивает доступ к программным АТС Asterisk (FreePBX, Elastix) через AMI интерфейс. Через него можно управлять многими функциями Asterisk (определение номеров, перевод звонков, набор телефона и т. д.)

1200 руб.

04.05.2018    41282    104    64    

55

Разработка внешней компоненты по технологии Native API. Мониторинг файловой системы в 1С

Разработка внешних компонент Платформа 1С v8.3 Россия Абонемент ($m)

Пример разработки внешней компоненты по технологии Native API для мониторинга выбранной папки файловой системы (изменение, переименование, удаление) файлов.

1 стартмани

12.03.2023    5130    4    binx    3    

45

Пишем внешнюю компоненту для 1С, NativeAPI на С++, для ОС Linux, с использованием Qt Creator

Разработка внешних компонент Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

В статье рассмотрен процесс создания внешней компоненты для 1С в среде Qt Creator для операционной системы Linux (ubuntu, debian, mint и им подобных). На примере компоненты для сбора данных от внешней аппаратуры и сохранение их в базе, посредством 1С. В качестве внешней аппаратуры в данном примере будем использовать Arduino UNO.

1 стартмани

13.05.2022    8875    5    user1779098    34    

61

Делаем табло в обозревателе из 1Ски с нуля за полчаса. Без бутстрапов, реактов и ангуляров. Жизнетрюки от kuzkov.info

Разработка внешних компонент WEB-интеграция Платформа 1С v8.3 Абонемент ($m)

На Инфостарте много разработок, которые предназначены для отображения в обозревателе данных на связи из 1С. С разными способами подключения, на разных технологиях. Есть платные, есть бесплатные. В данной публикации я хочу показать, как можно сделать сопряжение 1С обозреватель своими 1Сными силами с базовыми навыками верстки с нуля за полчаса и бесплатно.

1 стартмани

02.05.2022    9703    127    Steelvan    0    

67

Внешняя компонента - универсальный, надежный перехватчик клавиатурных событий

Разработка внешних компонент Платформа 1С v8.3 Абонемент ($m)

Перехват нажатия клавиш в 1С реализован с привязкой к фокусу формы. Если форма (или главное окно процесса 1С) теряет фокус, то перехват перестает работать. Чтобы решить эту проблему, была разработана соответствующая внешняя компонента.

1 стартмани

29.11.2021    8747    20    Prometeus2011    14    

36

Внешняя компонента для мобильного приложения

Разработка внешних компонент Мобильная разработка Мобильная платформа Россия Абонемент ($m)

Внешняя компонента для дополнения мобильной платформы некоторыми функциями.

1 стартмани

02.11.2021    8944    28    Prometeus2011    45    

37

Распознавание речи в мобильном приложении 1С на Android

Мобильная разработка Разработка внешних компонент Мобильная платформа Абонемент ($m)

Внешняя компонента для мобильной платформы 1С, работающая в связке с отдельной службой и позволяющая реализовать распознавание речи в мобильном приложении на Android.

1 стартмани

15.07.2021    10089    9    salexdv    6    

36

Звуковое управление в 1С 8.3

Разработка внешних компонент Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

В данной статье описано создание библиотеки для звукового управления (выполнение команд голосом) для платформы 1С 8.3. Задача была поставлена так, чтобы модуль функционировал непосредственно на клиенте 1С, осуществляя управление формами, и взаимодействовал с интерфейсом.

16.03.2021    10434    velemir    36    

81

Внешняя компонента: Android tools

Мобильная разработка Разработка внешних компонент Платформа 1С v8.3 Мобильная платформа Абонемент ($m)

Несколько дополнительных функций для мобильного приложения\клиента под Android. Размер архива внешних компонент под архитектуры ARM и x86 - 390KB.

1 стартмани

12.01.2021    14302    39    KAV2    46    

16

GraphViz1С: внешняя компонента 1С Native API для построения графов

Разработка внешних компонент Платформа 1С v8.3 Конфигурации 1cv8 Бесплатно (free)

Внешняя компонента Native API для Windows с исходными кодами на C++ для построения графов посредством библиотеки GraphViz. Граф строится на основании текстового описания в формате dot. Реализован экспорт в большинство графических форматов. Поддерживаются версии платформы от 8.3.14 и выше до 8.3.18.

22.12.2020    10890    214    kandr    15    

66

Использование встроенного сканера ТСД на Android в мобильном клиенте и мобильном приложении (драйвер сканера Android для 1С)

Разработка внешних компонент Мобильная разработка Платформа 1С v8.3 Абонемент ($m)

Используя данный драйвер, можно без единой строки кода, просто установив на ТСД мобильный клиент 1С, сразу начать подбирать товары в документах вашей учётной системы. А, адаптировав нужные формы под небольшой размер экрана ТСД, можно просто создать полноценное рабочее место для выполнения операций с помощью ТСД, не прибегая к стороннему софту. Если же на складе плохая связь (или её нет вовсе), то можно использовать возможности мобильного клиента в автономном режиме (потребуется доработка вашей конфигурации). Драйвер также можно использовать и для Android приложения на мобильной платформе. В результате чего можно обойтись без ненужных полей ввода и клавиатуры «на пол-экрана».

3 стартмани

09.10.2020    53178    378    ltfriend    221    

107

Мониторинг учетных записей пользователей Windows Server 2008/2012

Разработка внешних компонент Информационная безопасность Россия Абонемент ($m)

Программа позволяет отслеживать журнал событий безопасности действий над учетными записями пользователей (удаление, создание, блокировка, смена пароля и т.д.), и отправлять на E-mail уведомление системному администратору в случае изменения конфигурации пользователей Windows Server.

3 стартмани

10.09.2020    6900    0    ClickUp    0    

2

Внешняя компонента на C# для парсинга страниц через Phantom JS на сервере 1С х32,х64

Инструментарий разработчика Разработка внешних компонент WEB-интеграция Мессенджеры и боты Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

PhantomJS - это браузер без окна, используемый для автоматизации взаимодействия с веб-страницами. PhantomJS предоставляет JavaScript API, обеспечивающий автоматическую навигацию, снимки страницы, эмуляции поведение пользователя, что делает его распространенным инструментом, используемым для запуска модульных тестов на основе браузера в автономной системе, такой как среда непрерывной интеграции . PhantomJS основан на WebKit, что делает его похожей на Safari и Google Chrome средой просмотра. Это программное обеспечение с открытым исходным кодом, выпущенное под лицензией BSD.

1 стартмани

06.08.2020    12240    8    DrZombi    7    

22

Внешняя компонента Native API для управления окнами и буфером обмена, получения снимков окон Windows и Linux

Разработка внешних компонент Управляемые формы Россия Абонемент ($m)

Внешняя компонента Native API для Windows и Linux с исходными кодами на C++. Возможности компоненты: получение списка окон и списка процессов, управление размерами и положением окна, снимок окон и снимок экрана, доступ к данным буфера обмена, взаимодействие по протоколу WebSocket.

2 стартмани

16.04.2020    12170    24    kandr    13    

30

Android Java и NativAPI C++ внешняя компонента для широковещательных сообщений (отправка и прием). Подключаем сканер ШК и клавиатуру к "1С мобильное приложение"

Оптовая торговля Розничная торговля Сканер штрих-кода Разработка внешних компонент Мобильная разработка Мобильная платформа Оптовая торговля, дистрибуция, логистика Абонемент ($m)

Подключаем сканер ШК и клавиатуру к "1С мобильное приложение", на терминале сбора данных "ATOL Smart.Lite android 7.0". Работаем с буфером обмена. В архиве к теме; 1. исходник компоненты (папка package готовый zip); 2. исходник "AccessibilityService" для перехвата клавиатуры (папка package готовый apk); 3. cf - тестовая конфигурация

1 стартмани

15.04.2020    18610    105    SanyMaga    102    

20

Конвертация PDF в 1С

Разработка внешних компонент Абонемент ($m)

COM-компонента для работы с PDF (32/64 bit)

4 стартмани

31.03.2020    32652    157    SerVer1C    143    

77

Получение фото с веб-камеры

Разработка внешних компонент Платформа 1С v8.3 Абонемент ($m)

Получение фото с веб-камеры без ActiveX. Внешняя компонента по технологии Native API.

1 стартмани

25.03.2020    21272    190    berezdetsky    51    

27

Быстрая печать этикеток (ZPL, EPL, TSPL, EZPL, GEPL, TSPL-EZ)

Разработка внешних компонент Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Качественная и быстрая печать на внутреннем языке принтеров этикеток.

4 стартмани

02.02.2020    23001    80    Johny_v    20    

35

Сканирование по TWAIN в 1С (обычные и управляемые формы)

Разработка внешних компонент Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Абонемент ($m)

Обработка показывает пример, как можно в 1С проводить сканирование с помощью компоненты TWAIN.

3 стартмани

03.01.2020    15544    50    Denr83    0    

20

Маленькая и скромная мобильная внешняя компонента

Разработка внешних компонент Платформа 1С v8.3 Абонемент ($m)

Изваять простенькую мобильную компоненту на 1С для android не так-то просто. Посему назло отдельным супостатам, не желающим делится исходниками, представляю весь свой скромный труд на публичный суд.

1 стартмани

21.10.2019    21693    18    ripreal1    34    

67

Native внешняя компонента для оповещения по UDP или TCP

Разработка внешних компонент Платформа 1С v8.3 Абонемент ($m)

Native внешняя компонента для оповещения по UDP или TCP, которая реализует возможность в 1С передавать сообщения с сервера на клиента. Исходный код компоненты также представлен.

1 стартмани

06.10.2019    23122    50    vdv2701    40    

48

PinkRabbitMQ - Native API компонента 1С с открытым исходным кодом, для обмена сообщениями через RabbitMQ

Разработка внешних компонент Платформа 1С v8.3 Бесплатно (free)

PinkRabbitMQ представляет собой Native API компоненту для 1С Предприятия 8 (Windows 32bit и 64bit) с открытым исходным кодом на с++ (можно собрать компоненту самостоятельно). PinkRabbitMQ это низкоуровневая компонента которая реализует обмен по протоколу AMQP с брокером сообщений RabbitMQ. Для организации высокоуровнего обмена между информационными базами предназначен Адаптер. Компонента разрабатывается в рамках проекта Адаптер.

29.07.2019    39087    1856    Begemoth80    255    

206

Компонента для 1С, принимающая вес с железнодорожных, автомобильных, крановых весов

Разработка внешних компонент Платформа 1С v7.7 Платформа 1С v8.3 Транспорт, автопарки, такси Россия Платные (руб)

Программа "Компонента приёма веса для 1С, версия 3.0" позволяет принимать и заносить вес с весов непосредственно в программу "1С" - то есть, прием веса осуществляется целиком и полностью из программы "1С".

26400 руб.

09.04.2019    14822    2    8    

5

Внешние компоненты мобильной платформы 1С для ОС Андроид

Разработка внешних компонент Мобильная разработка Мобильная платформа Бесплатно (free)

На трех простых примерах описана процедура разработки внешних компонент для Андроид. Статья написана по мотивам доклада на конференции INFOSTART 2018 EDUCATION.

31.01.2019    23250    IgorKissil    29    

80

Эмулятор ККМ по стандарту ФФД 1.1

Разработка внешних компонент Кассовые операции ККМ Платформа 1С v8.3 1С:Розница 2 1С:Управление торговлей 11 Россия Абонемент ($m)

Эмулятор драйвера ККМ по стандарту ФФД 1.1 предназначен для использования всех возможностей программы, при отсутствии физической кассы. Подойдет как программистам при разработке интерфейса РМК, например, так и пользователям для тестирования возможностей программы.

1 стартмани

30.12.2018    38282    189    Matveymc    31    

28

Разработка внешних компонент на ассемблере goAsm

Разработка внешних компонент Абонемент ($m)

Создание внешней компоненты по технологии Com "с нуля", используя ассемблер goAsm.

1 стартмани

26.11.2018    12200    chessman    42    

137

WebSocket Клиент / Сервер. Внешний компонент

Разработка внешних компонент Платформа 1С v8.3 Конфигурации 1cv8 Абонемент ($m)

Реализация протокола WebSocket. Клиентская часть для взаимодействия с внешними сервисами. Серверная часть для организации собственного сервера, принимающего клиентские соединения в многопоточном режиме. Возможно взаимодействие RabbitMQ Slack Asterisk и другие

1 стартмани

16.11.2018    34241    166    nomadon    74    

32

Внешняя компонента для выполнения регулярных выражений

Разработка внешних компонент Платформа 1С v8.3 Абонемент ($m)

Внешняя Native API компонента для выполнения регулярных выражений на платформе 1С:Предприятие 8. Написана на C++. Используется движок PCRE2 версии 10.36 (до версии 13, использовался boost::regex v 1.69). Версия синтаксиса Perl Compatible Regular Expressions.

1 стартмани

12.11.2018    24320    62    KAV2    121    

82

TextRadar - компонента нечеткого поиска

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

Компонента предназначена для организации нечеткого поиска в текстовых данных, решения задач сопоставления списков и т.д. Вычисляемый коэффициент релевантности (похожести) - нормированный, лежит в диапазоне между 0 и 1. В случае необходимости (опционально) формируются данные для отображения найденных фрагментов. Расчет коэффициентов происходит в многопоточном режиме (на уровне компоненты). Для 32 и 64 разрядных систем.

19.09.2018    31459    42    TSSV    19    

19

Класс-обработка “Работа с картами Яндекс”

Разработка внешних компонент WEB-интеграция Платформа 1С v8.3 Абонемент ($m)

Как показать точку или маршрут на карте Яндекс. Как получить координаты по строке адреса (геокодирование).

1 стартмани

01.08.2018    45744    307    RSConsulting    21    

74

Распознавание лиц (off-line). Демонстрационная база.

Разработка внешних компонент Платформа 1С v8.3 Абонемент ($m)

Распознавание лиц входит в нашу жизнь стремительными темпами, бизнес стремится за событиями. В публикации находится описание и пример использования нейросетей для распознавания лиц.

1 стартмани

17.07.2018    25116    84    nomadon    45    

117

JVM Native API плагин - для запуска в 1С плагинов написанных на Java

Разработка внешних компонент Платформа 1С v8.3 Абонемент ($m)

Запускаем виртуальную машину Java в 1С. Собрана внешняя компонента которая позволяет запускать виртуальную машину java в среде 1С. Позволяет как передавать параметры в java - так и получать уведомление через externalevent. Предпосылкой создания являлся тот факт, что есть много готового функционала которого не хватает в 1С. Язык сpp - довольно сложен для быстрой разработки, и теперь возможно использовать готовые сборки java классов (так называемые jar-файлы) для использования в 1С.

1 стартмани

20.06.2018    23985    49    minimajack    75    

39