ЧГ
March 15, 2019, 4:44 a.m.

Как открыть презентацию на C++?

Qt, C++, WinAPI

Добрый день, возник вопрос: можно ли как нибудь прочитать ppt, PPTX файл на Qt? Задача: просто открыть презентацию, ее слайды отрисовать на виджет, с сохранениями гифок и того что там будет. Может быть у PowerPoint какой-то API в наличии , который позволяет так сделать? Либо может быть через ActiveX как нибудь? Буду благодарен за помощь!

Virtual hosting with 10 percent discount
Virtual hosting with 10 percent discount
EVILEG offers reliable hosting with a 10% discount for virtual hosting and 5% for VPS
4

не совсем из разряда решения на кьюте, но вариант, по которому пошёл бы я. Воспользоваться онлайн конвертером pptx в pdf и отображать уже pdf (с ним явно проблем меньше + нет зависимости от наличия и версии powerpoint на компьютере клиента + кросс-платформенность)

0
ЧГ

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

0

Можно ещё попытаться использовать Qt ActiveX

А также QAxWidget .

На некоторых форумах даже вот такие примеры использования есть

QString nPath;
nPath = QFileDialog::getOpenFileName(this,"select PPT files",qApp->applicationDirPath(),"*.ppt *.pptx");

QAxWidget *m_pAxWidget = new QAxWidget(this);
if(!m_pAxWidget->setControl("PowerPoint.Application"))
{
QMessageBox::critical(this, trUtf8("Error PPT"), "Install Microsoft Power Point (R) for support PPT!");
}
ui->gridLayout->addWidget(m_pAxWidget);
m_pAxWidget->setControl(nPath );

Главное расскажите потом, получилось у вас что-нибудь или нет. ActiveX в Qt такая скользкая тема. Вроде часто вопросом задаются, а информации с гулькин нос в интернете.

1
ЧГ

спасибо, попробую, отпишусь

0

Comments

Only authorized users can post comments.
Please, Log in or Sign up
May 25, 2019, 4:20 p.m.
Андрей Янкович

C++ - Test 001. The first program and data types

  • Result:93points,
  • Rating points8
m
May 19, 2019, 1:49 a.m.
mahhaki

Qt - Test 001. Signals and slots

  • Result:78points,
  • Rating points2
S
May 17, 2019, 1:14 p.m.
SunBro

Qt - Test 001. Signals and slots

  • Result:42points,
  • Rating points-8
Last comments
May 21, 2019, 8:10 p.m.
Дмитрий

Приветствую! Я думаю дойдёт и до этого, но пока изучать его у меня нет желания.
May 20, 2019, 7:20 p.m.
Евгений Легоцкой

Добрый день! Вы не думали разместить репозиторий проекта на GitHub?
P.
May 18, 2019, 2:03 p.m.
PELMYACH .

Спасибо большое! Вскоре буду разбираться!
May 18, 2019, 9:13 a.m.
Евгений Легоцкой

Добрый день! Отнимать значение общего счётчика можно в деструкторе класса кнопки QDynamicButton::~QDynamicButton(){ ResID--;} При этом я бы ещё переустанавливал значения вс...
P.
May 14, 2019, 10:33 p.m.
PELMYACH .

Здравствуйте!А не подскажите, как можно при удалении какой либо кнопки, у щётчика отнять значение?Дабы например четвёртой кнопке соответствовал ID 4, а не 5 скажем
Now discuss on the forum
May 24, 2019, 6:48 a.m.
Евгений Легоцкой

Если там будут только перечисления внутри namespace, то жа, достаточно будет заголовочного файла
May 24, 2019, 6:28 a.m.
Андрей Янкович

работает любой http сервер, и можно использовать обсалютно любой портпример <RemoteRepositories> <Repository> <Url>http://178.124.160.6:3030/A/B&l...;
May 23, 2019, 2:40 p.m.
Михаиллл

Попробовал сделать этот запрос по http и получил json файл. request.setUrl(QUrl("https://jsonplaceholder.typicode.com/todos/1")); Как Вы думаете, почему https не работает и как это и...
May 23, 2019, 10:42 a.m.
Михаиллл

Спасибо, помогло.
May 23, 2019, 6:31 a.m.
Евгений Легоцкой

Для задач и граф-то не нужен. Достаточно будет таблицы в локальной базе данных SQLite, в которой указывается задача, время и т.д. В этом разделе есть примеры по работа с базой д...

For registered users on the site there is a minimum amount of advertising

EVILEG
About
Services
Join us
© EVILEG 2015-2019
Recommend hosting TIMEWEB