PHP → COM-автоматизация OpenOffice: Чтение содержимого буфера обмена из песочницы
Часть первая (надеюсь, что не последняя)
Долгое время для меня OpenOffice оставался вещью-в-себе. Я знал, что он прекрасно автоматизируется питонами и бейсиками, но, вот, для PHP никак не мог найти подходящего инструмента. Совершенно случайно обнаружил такую интересную возможность OpenOffice: получение доступа к содержимому буфера обмена Windows. Тогда мне очень не хватало возможности писать простые CLI-скрипты, обрабатывающие текст в буфере на языке PHP. Поэтому я решил основательно разобраться, как можно рулить опен-офисом с помощью рнр из-под винды.
Debian → Переход на LibreOffice
На днях, закончился окончательный переход Debian на LibreOffice.
LibreOffice уже ранее поставлялся в testing и unstable, а с 23.06 доступен бэкпорт для Debian 6.0 «Squeeze».
LibreOffice уже ранее поставлялся в testing и unstable, а с 23.06 доступен бэкпорт для Debian 6.0 «Squeeze».
Подкасты → 2Гига #43: MIX11


Участники:
Евгений Жарков
Владимир Юнев
Денис Гладких
Содержание:
- Отчет MIX11: IE10, Silverlight 5, WP7 Mango
- Facebook может создать социальную сеть для Китая
- Двухъядерный смартфон HTC Sensation
- Amazon снижает цену на Kindle за счет рекламы на устройствах
- Эмулятор WebOS 3.0 Beta 1 утёк в сеть
- Bye bye Google Video
- Oracle больше не хочет заниматься развитием OpenOffice
Подкаст на RPOD,POD.FM
прослушан 385 раз
Системное администрирование → Взаимная конвертация и обработка электронных документов
В корпоративном секторе иногда возникает задача автоматической конвертации документов из одного формата в другой, а так же задача их програмной обработки и модификации. Казалось бы, в чём проблема: для нормальных форматов давным-давно написаны полнофункциональные библиотеки для работы — так что Perl или Python в руки и вперёд.Но, к превеликому сожалению для всех системных администраторов и программистов различных бизнес-приложений, огромная масса документооборота в данный момент всё ещё осуществляется с использованием закрытых и плохо поддающихся модификации и разбору форматов. Что уж тут лукавить — речь идёт о doc, xls и иже с ними, а так же во многом о docx, xlsx и подобных. Что делать с такими файлами, особенно если у вас нету свободной Windows с установленной последней версией Office, — совершенно непонятно. Безусловно, если у вас есть Windows, Visual Studio и навыки работы в C#, то проблем с анализом документов Microsoft будет значительно меньше. Зато возникнут проблемы с ODF. Плюс часто хочется сохранять результат в формате PDF, дабы уже никто не мог его изменить.
К счастью, есть достаточно универсальный способ работы практически с любыми распространёнными форматами документов на любой платформе. О нём и пойдёт речь дальше.
Python → PyUNO — быстрое незначительное редактирование xls-отчета из Python
Просто и быстро
Не так давно я столкнулся с необходимостью запротоколировать список изменений в нашем ПО. Заказчик прислал мне формуляр, который я должен был заполнить в соответствии с их внутренними требованиями к документации. Я открыл прилагавшийся к письму файл «
Изменения 1.xls» и немного приуныл. Точнее, мне в голову последовательно пришли мысли об увольнении, а затем — о самоубийстве. Формуляр состоял из 14 колонок. Быстро перемножив в уме количество колонок с числом внесенных нами атомарных изменений (около пятисот), я пошел курить.Сделать такую работу руками мне не под силу. Большинство данных (номера новых версий, описания изменений и т. п.) у меня, конечно, имелись в наличии, но в разных местах и самых причудливых форматах. Но семьсот копипастов — увольте. Поэтому мне пришлось немного освоить PyUNO. На всякий случай — опишу вкратце процесс управления документом
OOo из питоновского биндинга, вдруг кому пригодится.C++ → Автоматизация OpenOffice: Окончание
Продолжение первой части статьи.

Возможности:
На работе мы используем C++ Builder для написания внутренних программ, так что я делаю еще одну обертку над DLL для удобной работы с API.

2. Повторное использование DLL в своей программе
Возможности:
- открытие XLS файла,
- открытие файлов OpenOffice
- возможность открытия в скрытом режиме
- чтение данных из электронной таблицы
- полный спектр манипуляции с данными: вставка текста, числа, форматирование, объединение ячеек, установка границ, установка ширина столбца
- выгрузка xls таблицы на диск
- возмоность работы под WINE, при условий установки OpenOffice под Wine
- использование формул
- генерация версионно зависимого RDB файла налету (при необходимости)
На работе мы используем C++ Builder для написания внутренних программ, так что я делаю еще одну обертку над DLL для удобной работы с API.
Open source → Легкость бытия: Antiword, reST
Как при подготовке документов избежать медлительных офисных пакетов, пользоваться любимым текстовым редактором, отделить содержание от представления, обеспечить высокую читаемость и прозрачность документов для VCS, легко сравнивать версии текстов?
Софт → Аналог? Забудьте это слово
Лучше не искать аналогов, лучше искать программы, которые выполняют нужные задачи — так будет проще.
Товарищ с Лора
Как же надоедает, когда говорят «что-то аналог чего-то» в отношении софта: OpenOffice.org — аналог MS Office, Ubuntu — «бесплатный аналог Windows», Gimp — аналог Photoshop. В качестве замены слова аналог часто используют слова «замена» и «альтернатива». Да и не особо важно как говорят — главное — что имеют в виду и что в результате человек, который прочитал, услышал — понял.
А подразумевают обычно следующее:
- Полная совместимость с тем, с чем сравнивают.
- Все нововведения из того с чем сравнивают должны появлять в этом продукте.
- Умеет делать всё, что умеет делать продукт, с которым сравнивают.
Я как разработчик заявляю:
- ни один здравомыслящий программист никогда не будет писать аналог чего-то. Писать аналог — себя не уважать.
- ни одна программа не может быть аналогом другой
- каждая программа индивидуальна и использовать её нужно без оглядки на другие
- совместимость с «чужим софтом» — лишь плюшка
Типографика → Начинается открытое бета-тестирование свободных шрифтов PingWi Typography (PWT)
На LORе (Linux.org.Ru) сегодня появилась новость о том, что компания PingWin Software (PingWinSoft.Ru) опубликовала объявление о начале открытого бета-тестирования своего пакета свободных шрифтов PingWi Typography (PWT), создававшегося с 2009 года специально для решения проблем с искажением форматирования документов, созданных средствами MS Office, при открытии этих документов в OpenOffice.org.
Гарнитуры, входящие в пакет PWT, разрабатывались «с нуля» в качестве метрических аналогов виндовских шрифтов Tahoma, Arial, Courier, Verdana и Times New Roman (и называются похожим образом: PWT Tahion, PWT Arion, PWT Courant, PWT Verde, PWT Timer); кроме того, шрифты PWT ориентированы на улучшение отображения текста на мониторах с низким разрешением.
Тестовый шрифтовой пакет PWT распространяется по специальной свободной лицензии. Гарнитуры лежатв TTF-виде внутри ZIP-архива.
Обратите внимание: в слове «PingWi» нет конечной буквы «n», но это не опечатка, так и задумано.
Выпуск окончательной версии шрифтового пакета запланирован на сентябрь 2010 года.
Гарнитуры, входящие в пакет PWT, разрабатывались «с нуля» в качестве метрических аналогов виндовских шрифтов Tahoma, Arial, Courier, Verdana и Times New Roman (и называются похожим образом: PWT Tahion, PWT Arion, PWT Courant, PWT Verde, PWT Timer); кроме того, шрифты PWT ориентированы на улучшение отображения текста на мониторах с низким разрешением.
Тестовый шрифтовой пакет PWT распространяется по специальной свободной лицензии. Гарнитуры лежат
Обратите внимание: в слове «PingWi» нет конечной буквы «n», но это не опечатка, так и задумано.
Выпуск окончательной версии шрифтового пакета запланирован на сентябрь 2010 года.
Убунтариум → Ubuntu 9.10 и его жизнь на моем десктопе
Привет Хабр!
Своим первым постом хочу познакомить тебя с моей новой системой, в опытных кругах именуемая «Кармическая Коала», ну а в мире маркетинга и экономики — Ubuntu 9.10. И, может быть, для вас она совсем-совсем привычная и удобная, то мне, упёртому виндузятнику с 8 летним стажем, она кажется удивительной, интересной и слегка… загадочной. Итак, что меня побудило окончательно перейти на альтернативные операционные системы, и как он был совершен — под хабракатом.
Пост нисколько не провокационный и не призывает обратиться в веру свободного ПО — он просто показывает опыт одного лишь человека. Как это любит хабр, да.

Своим первым постом хочу познакомить тебя с моей новой системой, в опытных кругах именуемая «Кармическая Коала», ну а в мире маркетинга и экономики — Ubuntu 9.10. И, может быть, для вас она совсем-совсем привычная и удобная, то мне, упёртому виндузятнику с 8 летним стажем, она кажется удивительной, интересной и слегка… загадочной. Итак, что меня побудило окончательно перейти на альтернативные операционные системы, и как он был совершен — под хабракатом.
Пост нисколько не провокационный и не призывает обратиться в веру свободного ПО — он просто показывает опыт одного лишь человека. Как это любит хабр, да.
