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

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

23 Сентябрь 2021, 15:19 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
Новости: Вы можете задать вопрос по LibreOffice или Apache OpenOffice без регистрации, используя форму
 
   Начало   Помощь Поиск Войти Регистрация    задать вопрос  
Страниц: 1   Вниз
  Печать  
Автор Тема: Использую procedure TCalc.SetAutoKerning(const Value:boolean); begin Cell.CharAutoKer...  (Прочитано 2283 раз)
0 Пользователей и 1 Гость смотрят эту тему.
ForumOOo (бот)

Offline Offline

Сообщений: 773


« Стартовое сообщение: 31 Январь 2019, 09:23 »

Компонент: Calc
Версия продукта: 4.x
Сборка: Copyright © 2017 The Apache Software Foundation.
ОС: windows xp

Использую
procedure TCalc.SetAutoKerning(const Value:boolean);
begin
  Cell.CharAutoKerning:=Value;supported
 // DoChange;
end;
для изменения интервала между символами, CharHeight - изменяет размер без проблем, а на CharKerning и CharAutoKerning ошибка Method 'CharAutoKerning' not supported by automation object.

--
Подпись: LunNata
Эл. почта: Nataly@spetm.com.ua
Записан
kompilainenn
Мастер
*****
Offline Offline

Сообщений: 3 348



« Ответ #1: 31 Январь 2019, 10:06 »

Вопрос в чем? Ну и сам файл с макросом покажите
Записан

Поддержать разработчиков LibreOffice можно тут, а наш форум вот тут
LunNata
Новичок
*
Offline Offline

Сообщений: 3


« Ответ #2: 31 Январь 2019, 10:42 »

Добрый день! Я загружаю данные в Calc через Delphi и мне нужно изменить междустрочный интервал и интервал между символами. Изменить размер, цвет шрифта получилось без проблем. А по CharAutoKerning ошибка "Method 'CharAutoKerning' not supported by automation object"
Записан
mikekaganski
Гуру
*******
Online Online

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


« Ответ #3: 31 Январь 2019, 11:05 »

И всё-таки - в чём вопрос? То, что Вы написали - это рассказ о том, что Вы видите. Причём документация по сервису CharacterProperties вполне однозначно говорит, что свойство CharAutoKerning - опциональное. Поэтому надо проверять его доступность либо обрабатывать исключения. И объект, которому Вы хотите назначить значение свойства, не поддерживает его.

А если Вы хотите, чтобы он вдруг заподдерживал - это нужно вносить улучшения в программу. Я думаю, ребята в AOO будут рады Вашему вкладу; да и мы в ЛО тоже всегда рады помочь новичкам начать вносить исправления и улучшения.

P.S. Кстати, интересно: а в ЛО оно не заработает? Есть у нас коммит от 2013, где это свойство добавляется в Calc...

P.P.S. Нет, не заработает Улыбка
« Последнее редактирование: 31 Январь 2019, 11:18 от mikekaganski » Записан

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

Сообщений: 3


« Ответ #4: 31 Январь 2019, 15:09 »

И в пункте меню Формат нет интервала, и по правой кнопке мыши он не появляется, междустрочный интервал в Calc нельзя изменить, только во Writer .
Записан
Rafik
Форумчанин
***
Offline Offline

Сообщений: 107


« Ответ #5: 31 Январь 2019, 15:28 »

Рекомендую поставить на опен/либре офис расширение MRI - UNO object inspection tool. В нём можно смотреть какие свойства и методы поддерживает тот или иной объект.
Кстати, для ячейки MRI не показывает CharAutoKerning ни в методах, ни в свойствах.
Записан
LunNata
Новичок
*
Offline Offline

Сообщений: 3


« Ответ #6: 31 Январь 2019, 16:35 »

Есть CharKerning, мне и он подходит, а если нет междустрочного интервала, то и смысла в загрузке в OpenOffice Calc нет, все равно согласно стандартам не выгрузить. Спасибо, что ответили.
Записан
JohnSUN
Капитана в тот день называли на "ты"
Гуру
*******
Offline Offline

Пол: Мужской
Расположение: Киев
Сообщений: 2 764


Помогаю людям и компьютерам понимать друг друга


WWW
« Ответ #7: 31 Январь 2019, 18:56 »

загружаю данные в Calc через Delphi и мне нужно изменить междустрочный интервал и интервал между символами
И вот тут "Внимание, вопрос!" Изменить с чего на что? А если сразу задать такой, чтобы не менять?
Другими словами, если гора не идёт к Магомету, то выгружать только данные, а всё форматирование сделать заранее и сохранить в файлах-шаблонах. И код станет проще, и результат красивее...
Записан

Владислав Орлов aka JohnSUN
Благодарить-не зазорно.
Подарить благо создателям офиса, нашему ресурсу, мне
Rafik
Форумчанин
***
Offline Offline

Сообщений: 107


« Ответ #8: 1 Февраль 2019, 07:53 »

...всё форматирование сделать заранее и сохранить в файлах-шаблонах. И код станет проще, и результат красивее...
Этот способ самый надёжный и сильно упрощающий код.

Если в отчёте количество строк тысячи и десятки тысяч, то составление отчёта может быть несколько длительным.
В такой ситуации можно из "шаблона " извлечь content.xml, пошаманить с ним и снова упаковать. При таком подходе отчёт будет делаться намного шустрее. Здесь, для составления отчёта, отпадает нужность калька на стадии его генерации. Если делфи хорошо дружит с xml, то внесение записей в контент можно организовать кодом, который будет делать необходимые изменения в content. Это усложнит код и придётся руками "распарсить" этот самый контент, чтобы понять куда, в каком виде и что вставлять.
Если не дружит с xml, то можно будет сделать шаблоны для сборки контента. Здесь есть большой недостаток - при изменении шаблона отчёта придётся переделывать шаблоны для сборки content.xml.

Записан
Страниц: 1   Вверх
  Печать  
 
Перейти в:  

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