-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcommand_builders.cpp
More file actions
67 lines (45 loc) · 3.26 KB
/
Copy pathcommand_builders.cpp
File metadata and controls
67 lines (45 loc) · 3.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#include "command_builders.h"
#include "qcontainerfwd.h"
QStringList ocrpdf(const QFileInfo &info, const QStringList &){
return QStringList({info.absolutePath() + "/" + info.fileName(), info.dir().absolutePath() + "/ocr_" + info.fileName()});
}
QStringList tesseract(const QFileInfo &info, const QStringList &){
return QStringList({info.absolutePath() + "/" + info.fileName(), info.dir().absolutePath() + "/text_" + info.completeBaseName()});
}
QStringList convert(const QFileInfo &info, const QStringList &extension){
return QStringList({info.absolutePath() + "/" + info.fileName(), info.dir().absolutePath() + "/" + info.completeBaseName() + "." + extension[0]});
}
QStringList convert_resolution(const QFileInfo &info, const QStringList &ext){
QString parameter = ext[0];
if (ext[1] == "Force resize"){parameter = '!' + parameter;}
return QStringList({info.absolutePath() + "/" + info.fileName(),"-resize", ext[0] ,info.dir().absolutePath() + "/" +"resolution_"+ info.completeBaseName() + '.' + info.suffix()});
}
QStringList convert_pdf_to_image(const QFileInfo &info, const QStringList &extension){
return QStringList({'-' + extension[0], info.absolutePath() + "/" + info.fileName() ,info.dir().absolutePath() + "/" + info.completeBaseName()});
}
QStringList convert_text_text(const QFileInfo &info, const QStringList &extension){
return QStringList({info.absolutePath() + "/" + info.fileName(), "-o", info.dir().absolutePath() + "/" + info.completeBaseName() + "." + extension[0]});
}
QStringList convert_audio_audio(const QFileInfo &info, const QStringList &extension){
return QStringList({"-i", info.absolutePath() + "/" + info.fileName(), info.dir().absolutePath() + "/" + info.fileName() + "." + extension[0]});
}
QStringList compress_pdf(const QFileInfo &info, const QStringList &extension){
QMap<QString, QStringList> profiles = {
{"Maximum compression", {"screen"}},
{"Maximum compression gray",{ "screen", "-sColorConversionStrategy=Gray"}},
{"Balanced", {"ebook"}},
{"High quality", {"printer"}},
{"Maximum quality", {"prepress"}}
};
if (extension[0] == "Maximum compression gray") return QStringList({ "-sDEVICE=pdfwrite", "-dCompatibilityLevel=1.4", "-dPDFSETTINGS=/" + profiles[extension[0]][0], profiles[extension[0]][1] , "-dNOPAUSE", "-dQUIET", "-dBATCH", "-sOutputFile=" + info.dir().absolutePath() + "/compressed_" + info.fileName(), info.absoluteFilePath()});
return QStringList({ "-sDEVICE=pdfwrite", "-dCompatibilityLevel=1.4", "-dPDFSETTINGS=/" + profiles[extension[0]][0], "-dNOPAUSE", "-dQUIET", "-dBATCH", "-sOutputFile=" + info.dir().absolutePath() + "/compressed_" + info.fileName(), info.absoluteFilePath()});
}
QStringList convert_compression(const QFileInfo &info, const QStringList &extension){
return QStringList({info.absoluteFilePath(), "-quality", QString::number(101 - extension[0].toInt()), info.dir().absolutePath() + "/" + "compressed_" + info.completeBaseName() + "." + extension[1]});
}
QStringList qr_code_gen(const QFileInfo &, const QStringList &extension){
return QStringList({"-o", QDir::homePath() + "/qr_" + extension[1] + ".png", extension[0]});
}
QStringList qr_code_read(const QFileInfo &info, const QStringList &){
return QStringList({info.filePath()});
}