Область применения
Для рендеринга PDF в картинку в компоненту передаётся путь к файлу. В результате можно получить либо несколько файлов картинок в формате PNG (для каждой страницы), либо двоичные данные картинки для указанного номера страницы для обработки в оперативной памяти без записи на диск.
Технические требования
Компонента работает как на x86, так и x86_64 платформах, в режиме Сервера, Тонкого клиента. Распространяется в виде пакетного файла, который содержит в себе все версии компоненты.
Проверено на платформе 1С версий 8.3.20.2180, 8.3.24.1467
Функциональные возможности
Пример работы с компонентой на сервере и на клиенте:
#Область ТестДляКлиента
&НаКлиенте
Процедура ТестДляКлиента(Команда)
Подключить(Истина);
КонецПроцедуры
&НаКлиенте
Процедура Подключить(УстановитьЕслиНеПодключено) Экспорт
Сообщить("Начинаем подключение ВК на клиенте.");
НачатьПодключениеВнешнейКомпоненты(
Новый ОписаниеОповещения("ПослеПодключения", ЭтотОбъект, УстановитьЕслиНеПодключено),
"ОбщийМакет.Imagius",
"Imagius",
ТипВнешнейКомпоненты.Native);
КонецПроцедуры
&НаКлиенте
Процедура ПослеПодключения(Подключено, УстановитьЕслиНеПодключено) Экспорт
Если Подключено Тогда
Сообщить("ВК успешно подключена на клиенте.");
Тест();
ИначеЕсли УстановитьЕслиНеПодключено Тогда
Сообщить("Начинаем установку ВК...");
НачатьУстановкуВнешнейКомпоненты(
Новый ОписаниеОповещения("Подключить", ЭтотОбъект, Ложь),
"ОбщийМакет.Imagius");
Иначе
Сообщить("Не удалось установить/подключить внешнюю компоненту.");
КонецЕсли;
КонецПроцедуры
&НаКлиенте
Асинх Процедура Тест()
ОбъектВК = Новый("Addin.Imagius.Imagius");
НастройкиПрименены = Ждать ОбъектВК.НастройкиРендерингаАсинх(
"{
| ""target_width"": 2000,
| ""maximum_height"": 3000
|}");
Сообщить("Настройки применены: " + НастройкиПрименены.Значение);
Результат = Ждать ОбъектВК.PdfFile2ImgFileАсинх(Объект.ПутьФайлPDF, "password", "1-100");
Результат = ОбработкаСтрокиXML.УдалитьНедопустимыеСимволыXML(Результат.Значение);
Сообщить("Обработанные файлы: " + Результат);
Сообщить("Обработка завершена.");
КонецПроцедуры
#КонецОбласти // ТестДляКлиента
#Область ТестДляСервера
&НаКлиенте
Процедура ТестДляСервера(Команда)
ТестНаСервере();
КонецПроцедуры
&НаСервере
Процедура ТестНаСервере()
Если Не ПодключитьВнешнююКомпоненту("ОбщийМакет.Imagius", "Imagius", ТипВнешнейКомпоненты.Native) Тогда
Сообщить("Не удалось подключить ВК на сервере.");
Возврат;
Иначе
Сообщить("ВК успешно подключена на сервере.");
КонецЕсли;
ОбъектВК = Новый("Addin.Imagius.Imagius");
НастройкиПрименены = ОбъектВК.НастройкиРендеринга(
"{
| ""target_width"": 2000,
| ""maximum_height"": 3000
|}");
Сообщить("Настройки применены: " + НастройкиПрименены);
Данные = ОбъектВК.PdfFile2ImgData(Объект.ПутьФайлPDF, "", 1);
Картинка = Новый Картинка(Данные, Истина);
Сообщить("Получена картинка в формате: " + Картинка.Формат());
ОбработкаКартинки = Новый ОбрабатываемаяКартинка(Картинка);
ОбработкаКартинки.ВыделитьОбласть(100, 100, 860, 960);
Картинка = ОбработкаКартинки.ПолучитьКартинку();
Картинка.Записать("C:\...\label-crop.png");
Сообщить("Обработка завершена.");
КонецПроцедуры
#КонецОбласти // ТестДляСервера
Методы
НастройкиРендеринга / ConfigPdfium
Параметры:
Настройки - Строка - настройки компоненты в формате JSON. Передаваться могут не все поля, а только необходимые. Например, передаём точную ширину картинки (target_width) и максимальную высоту (maximum_height). Фактическая высота картинки будет расчитана автоматически. Допустимые поля структуры:
- target_width - Число - ширина картинки в пикселях;
-
target_height - Число - высота картинки в пикселях;
-
scale_width_factor - Число - масштаб по ширине;
-
scale_height_factor - Число - масштаб по высоте;
-
maximum_width - Число - максимальный размер результата по ширине в пикселях;
-
maximum_height - Число - максимальный размер результата по высоте в пикселях.
Результат:
Булево - признак того, что настройки успешно установлены.
ФайлPdfВФайлКартинки / PdfFile2ImgFile
Параметры:
Путь - Строка - путь к PDF файлу.
Пароль - Строка - пароль к файлу, если установлен, или пустая строка.
Страницы - Строка - номера необходимых страниц в формате "1, 2, 5-7".
Результат:
Строка - массив в формате JSON с именами файлов-картинок.
ФайлPdfВДанныеКартинки / PdfFile2ImgData
Параметры:
Путь - Строка - путь к PDF файлу.
Пароль - Строка - пароль к файлу, если установлен, или пустая строка.
Страница - Число - номер страницы.
Результат:
ДвоичныеДанные - данные, из которых можно сформировать картинку и обработать, сохранить на диск.
Техническая поддержка и обновления
Бесплатный период техподдержки составляет 1 месяц со дня покупки.
Также после приобретения вы получаете 3 месяца бесплатных обновлений.
По окончании бесплатного периода вы можете приобрести услугу технической поддержки с доступом к обновлениям на платной основе.
Проверить наличие обновлений можно в личном кабинете. Если обновления недоступны - загрузить новую версию можно после покупки обновлений/технической поддержки.
Задать вопрос по программе можно по кнопке "Техподдержка" на странице описания.
При создании тикета необходимо предоставить:
- Номер заказа
- Описание вопроса. Если это ошибки - напишите порядок ваших действий с программой, которые к ней привели (приложите видео/скриншоты/отчеты об ошибке)
- Точную конфигурацию 1С, и версию платформы, на которой используете купленное решение (наименование и версию 1С можно взять из раздела "О программе"), версию купленной программы.
К созданной заявке подключается специалист. Дальнейшее обсуждение проблемы будет проходить в тикете техподдержки. Стандартный срок реакции - 24 часа в рабочие дни с момента обращения
Проверено на следующих конфигурациях и релизах:
- Управление торговлей, редакция 11, релизы 11.5.8.254
- 1С:Деньги, релизы 2.0.44.28