我正在使用文档Oracle Outside In来输出pdf文档的文本内容。
我正在使用以下参数从的内容访问传递到CASample.c
文件的主函数https://www.oracle.com/middleware/technologies/outside-in-technology-downloads.html#
C:adobe-acrobat.pdf -u C:adobe-acrobat.txt";
这给了我以下格式的文本。
SCCCA_TEXT: dwSubType = 0x08020001, Number of Characters = 8, Character Set = 0x00030100.
Outside
SCCCA_TEXT: dwSubType = 0x08020001, Number of Characters = 3, Character Set = 0x00030100.
In
SCCCA_TEXT: dwSubType = 0x08020001, Number of Characters = 8, Character Set = 0x00030100.
Unlocks
SCCCA_TEXT: dwSubType = 0x08020001, Number of Characters = 9, Character Set = 0x00030100.
Business
SCCCA_TEXT: dwSubType = 0x08020001, Number of Characters = 10, Character Set = 0x00030100.
Documents
SCCCA_TEXT: dwSubType = 0x08020001, Number of Characters = 4, Character Set = 0x00030100.
for
SCCCA_TEXT: dwSubType = 0x08020002, Number of Characters = 1, Character Set = 0x00030100.
那么,如何在没有元数据的情况下只从中获取文本呢?我只需要Outside In Unlocks Business Documents for
,而不是整个元数据内容,或者我必须制作自己的解析器来获取这些数据吗?
在他们下载的文件中也有一个tademo.vcxproj
,它可以提取文本。它是一个桌面应用程序,您可以将其转换为库。
https://www.oracle.com/middleware/technologies/outside-in-technology-downloads.html#
在将其转换为库之后,我在tademo.c
文件中创建了以下函数,该函数将接受输入文件并将文本文件导出为输出。
int callableMain(char* inputPath, char* outputPath) {
strncpy(szInputPath,inputPath, PATHSIZE);
DAInitEx(SCCOPT_INIT_NOTHREADS, OI_INIT_DEFAULT);
DoTextClose();
dwBlockNum = 0;
DoTextOpen(1);
DoSaveTextAs(outputPath);
DoTextClose();
return 1;
}