Страница 50 из 61

libxlsxwriter for Clarion

Добавлено: 16 Январь 2020, 10:30
Admin
Игорь Столяров писал(а): 16 Январь 2020, 10:18С Новым годом
Просто кто то повторил за разработчиком библиотеки. :-)
Но мы все равно говорим :ty:

libxlsxwriter for Clarion

Добавлено: 17 Январь 2020, 4:22
Admin
1. желательно перенести пример в папку ExampleS\libxlsxwriter, что бы при копировании папок сразу в отдельную попадало

2. где нибудь в начале xlsxwriter.clw вставить

Код: Выделить всё

PRAGMA ('link (libxlsxw.lib)')
для подключения lib файла. он же нам вроде безусловно нужен при подключении clw

3. написал простенький шаблон для подключения класса в программу. в простой EXE и в EXE+DLL
поместить шаблон libxlsxwriter.tpl в папку Template

4. классы описать как

Код: Выделить всё

xlsxwriter      CLASS, TYPE, MODULE('xlsxwriter.clw'), LINK('xlsxwriter.clw',_ABCLinkMode_), DLL(_ABCDllMode_)
...
                END
xlsxchart       CLASS, TYPE, MODULE('xlsxwriter.clw'), LINK('xlsxwriter.clw',_ABCLinkMode_), DLL(_ABCDllMode_)
...
                END
5. пакетик по моему под папку 3rdparty заточен...

libxlsxwriter for Clarion

Добавлено: 17 Январь 2020, 4:25
Admin
Это... я не настаиваю конечно же :)

libxlsxwriter for Clarion

Добавлено: 17 Январь 2020, 19:24
RaFaeL
Пункт 2 обычно делают в пункте 3, а не в clw

libxlsxwriter for Clarion

Добавлено: 18 Январь 2020, 4:30
Admin
RaFaeL писал(а): 17 Январь 2020, 19:24 Пункт 2 обычно делают в пункте 3, а не в clw
Давно в стандартные классы заглядывал? :)
Поищи там слово PRAGMA
Если в шаблон помещать, придется условия проверять. А в CLW безусловно, если он используется LIB нужно подключать!

libxlsxwriter for Clarion

Добавлено: 19 Январь 2020, 20:31
RaFaeL
Выложил в шапку новую версию

В методе InsertImage параметр добавился в середину, кто недавно добавлял описание, ссылку и подсказку к картинке придется их подвинуть

libxlsxwriter for Clarion

Добавлено: 22 Январь 2020, 12:35
Игорь Столяров
Admin писал(а): 17 Январь 2020, 4:22 PRAGMA ('link (libxlsxw.lib)')
Классная штука, доложу я Вам. :)
Прописал у себя в субклассе и теперь можно не следить, что бы в APP был подключен LIB.
Плюс бонус: нет вопроса при конвертировании APP из CW6 в CW11. :)

libxlsxwriter for Clarion

Добавлено: 22 Январь 2020, 18:22
RaFaeL
В текущем релизе и у меня прописано

libxlsxwriter for Clarion

Добавлено: 22 Январь 2020, 18:40
Игорь Столяров
Упс ! Точно. Тогда у себя в субклассе можно отключить. :)

libxlsxwriter for Clarion

Добавлено: 05 Март 2020, 21:29
RaFaeL
Обновил шапку: добавлен метод вставки изображения из памяти. Также исправлен не очень понятный баг с размером изображения (Issue 274), надеюсь его пофиксят в мастере

libxlsxwriter for Clarion

Добавлено: 07 Март 2020, 21:55
Игорь Столяров
RaFaeL писал(а): 05 Март 2020, 21:29 добавлен метод вставки изображения из памяти.
Ещё раз спасибо - всё прекрасно работает.
Решается старый вопрос: при большом кол-ве добавляемых картинок их все нужно было хранить на HDD до записи XLSX
(а потом ещё и удалять - что тоже время). Теперь красота - записали буфер с картинкой и забыли про него. :)

Поэтому получается даже выгодней в субклассе сделать метод, который загрузить картинку из файла в буфер и запишет
этот буфер в XLSX.

Предположение:
finsoftrz писал(а): 11 Февраль 2020, 6:26 Xlsx это zip архив. По идее, bmp должны сильно сжиматься. Проверяли?
следует считать верным. Разница размера XLSX при потоковом записи картинок из буфера в BMP и этих же картинок
преобразованных в PNG с хорошим сжатием (а это кстати время и потеря качества картинки !) составляет порядка 10% …
Нужны ли все эти танцы с бубном преобразования в PNG ради 10% объёма ? Пожалуй нет - выбираем скорость и надёжность. :)

P/S: Написанное выше следует понимать буквально. Т.е. если, например, мы делаем XLSX каталог c картинками товаров
размером 200x200 и у нас есть исходные фотки товаров в Full HD - то конечно их нужно масштабировать (не смена формата !)
перед вставкой в XLSX.

libxlsxwriter for Clarion

Добавлено: 17 Март 2020, 12:12
Larion
При использовании библиотеки возникает ошибка при открытии книги в Excel
В книге "книга.xlsx" обнаружено содержимое, которое не удалось прочитать. Попробовать восстановить содержимое книги? Да Нет.
Выбираю Да вижу файл как задумал.

Я нашёл место в программе

Код: Выделить всё

err#=xlsx.Merge(RowST,1,RowST,5)
если комментирую строку ошибки нет. Но нет и объединения ячеек в таблице.

libxlsxwriter for Clarion

Добавлено: 17 Март 2020, 17:36
Игорь Столяров
Larion писал(а): 17 Март 2020, 12:12 ошибка при открытии книги в Excel
Расскажите пожалуйста как Вам удалось открыть книгу в XLSX ?
Или речь идёт о СОЗДАНИИ новой книги (XLSX.NewWorkBook) ?

libxlsxwriter for Clarion

Добавлено: 17 Март 2020, 17:52
Larion
книга.xlsx Это имя файла созданного при помощи библиотеки.

Это сообщение Excel
В книге "книга.xlsx" обнаружено содержимое, которое не удалось прочитать. Попробовать восстановить содержимое книги? Да Нет.

libxlsxwriter for Clarion

Добавлено: 17 Март 2020, 18:18
finsoftrz
Тут надо еще писать, какой версией Excel открываете. Не все одинаково понимают xlsx.