1/*
2 This file is part of a KMetaData File Extractor
3 SPDX-FileCopyrightText: 2013 Denis Steckelmacher <steckdenis@yahoo.fr>
4
5 SPDX-License-Identifier: LGPL-2.1-or-later
6*/
7
8
9#ifndef OFFICE_EXTRACTOR_H
10#define OFFICE_EXTRACTOR_H
11
12#include "extractorplugin.h"
13
14namespace KFileMetaData
15{
16
17class OfficeExtractor : public ExtractorPlugin
18{
19 Q_OBJECT
20 Q_PLUGIN_METADATA(IID kfilemetadata_extractor_iid
21 FILE "officeextractor.json")
22 Q_INTERFACES(KFileMetaData::ExtractorPlugin)
23
24public:
25 explicit OfficeExtractor(QObject* parent = nullptr);
26
27 QStringList mimetypes() const override;
28 void extract(ExtractionResult* result) override;
29
30private:
31 void findExe(const QString& mimeType, const QString& name, QString& fullPath);
32 QString textFromFile(const QString& fileUrl, const QString& command, QStringList& arguments);
33
34private:
35 QStringList m_available_mime_types;
36
37 QString m_catdoc;
38 QString m_catppt;
39 QString m_xls2csv;
40};
41}
42
43#endif
44

source code of kfilemetadata/src/extractors/officeextractor.h