Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

Форум поддержки пользователей. LibreOffice, Apache OpenOffice, OpenOffice.org

5 Июль 2020, 17:24 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Доступно и просто о работе в офисных пакетах
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1   Вниз
  Печать  
Автор Тема: Автоматическиая вставка QR-кода через API и через Dispatcher во Writer/Calc  (Прочитано 344 раз)
0 Пользователей и 1 Гость смотрят эту тему.
economist
Форумчанин
***
Offline Offline

Сообщений: 1 206


« Стартовое сообщение: 3 Июнь 2020, 12:21 »

В LO 6.4 на смену неск. расширениям и поделкам пришел встроенный Вставка - Объект - QR код...
Работает хорошо с выделенным или вручную скопированным текстом, нет проблем с кириллицей.

Применений для QR - масса, напр. вставить в лев-верх углу всех Приказов, Положений, Заявлений, Счетов итп QR - http-ссылку, чтобы каждый с помощью камеры смартфона смог за 10 сек. убедиться что данный приказ еще не отменен, заява - зарегена, счет - оплачен итп. Причем хостить ссылки и слова "да/нет" можно где угодно в облаке, ничего секретного или ПД-шного в словах да/нет - нетути... Вот это и отличает настоящий эл. документооборот от "показушного" - ты держишь бумагу в руках со свойствами электронного дока. Круть!

А теперь о грустном. У меня не получилось вставить QR через API, а диспетчер не понимает переданный массив параметров (т.е. работает без ошибок, но показывает пустой диалог без параметров и с зачем-то включенной по умолчанию Высокой корр. ошибок, что делает код мельче в 4 раза). Вот как я делал, возможно жестко туплю:
Код:
sub QRCodeFromDispatcher
' https://api.libreoffice.org/docs/idl/ref/structcom_1_1sun_1_1star_1_1drawing_1_1QRCode.html#details
Dim args1(2) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Border"
args1(0).Value = 1
args1(1).Name = "ErrorCorrection"
args1(1).Value = 1
args1(2).Name = "Payload"
args1(2).Value = "my text"
dispatcher.executeDispatch(document, ".uno:InsertQrCode", "", 0, args1())

Подскажите как через API и как правильно через Диспетчер вставлять QR код родным для LO 6.4+ методом? И можно ли убрать "Высокая" коррекция ошибок по умолчанию? В Сервис-Параметры-Расширенные-Экспертные такого параметра не нашел.
Записан

Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...
mikekaganski
Гуру
*******
Online Online

Пол: Мужской
Расположение: Хабаровск -> Москва
Сообщений: 1 919


« Ответ #1: 3 Июнь 2020, 12:25 »

Пока никак. API для QR ещё не реализован, к сожалению.
Записан

С уважением,
Михаил Каганский
economist
Форумчанин
***
Offline Offline

Сообщений: 1 206


« Ответ #2: 4 Июнь 2020, 10:23 »

Ок, подождем реализации.
Но уже сейчас можно использовать эту фичу QR код вот так (псевдокод):
Код:
1) Кодом создать текст ссылки и вставить левую пустую ячейку 2-х кол. таблицы вверху
(есть традиция так оформлять "шапки" доков - ну пусть и будет)
2) Скопировать текст ячейки, вызвать QR код, выйдет диалог
3) Выбрать мышью Низкий и нажать Enter. Появится код
4) Удалить текст из ячейки (почему-то сам очищается не всегда)


Макрос этот назначить на событие Печать. Профит.
Записан

Руб. за сто, что Питоньяк
Любит водку и коньяк!
Потому что мне, без оных, -
Не понять его никак...
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!