Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt Общие вопросы _ Вставка изображения в Word через ActiveQt

Автор: dim_san 19.11.2009, 15:51

Создаю документ ворда таким образом:

QAxWidget *activeX = new QAxWidget( );
activeX->setControl( "Word.Document" );
ui->verticalLayout->insertWidget(0, activeX );

при этом размещаю его в лайауте. Показывается документ как и надо (встроенный в мой виджет).

Нужно вставить картинку в документ, причем не из файла, а как ByteArray.

Может кто знает за что дергать?

Автор: ViGOur 20.11.2009, 11:48

Посмотри как это делает сам Word, можно скопировать картинку размещенную в Word документе в clipboard (Ctrl+C) и нажав запись макроса в в данном ворд документе вставить картинку из clipboard'а и посмотреть, что там за макрос получился. А там уже дело техники перевести это на Qt.

Я бы сам попробовал это сделать, но я под линуксами сижу.

Автор: dim_san 20.11.2009, 12:37

Да, собственно и получилось через клипборд вставить. В qt заношу картинку в клипборд, ворду говорю вставить...
Одно неприятно - приходится портить неявно для пользователя клипборд, что не очень хорошо.

Автор: MoPDoBoPoT 20.11.2009, 17:40

Ну тогда сделай костыль для костыля :)
Перед записью в буфер запоминай его содержимое, а после вставки восстанавливай.
Естественно это криво, особенно когда в буфере изначально находился большой объект.

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)