1.
如何从文件中获取抛光字符?我能不能告诉你
PdfVariant::getString()它会处理波兰文字吗?因为我得到的是\200而不是ł,有趣的是只有当ł作为第一个“非基本”字符出现时。因此,如果pdf文件以aaaałęąaaaa开头,则ł被编码为\200,ę类\201和ą类\202 ,而如果pdf文件以aaaaąęłaaaa开头,ł编码为\202,ę类似\201和ą类似\200如何在任何系统中获得这些字符?
2.
当我试图从pdf文件中提取文本时,我会这样做:
string input_name = "example.pdf";
PdfMemDocument pdf(input_name.c_str());
for (int pn = 0; pn < pdf.GetPageCount(); ++pn) {
PdfPage* page = pdf.GetPage(pn);
PdfContentsTokenizer tok(page);
const char* token = nullptr;
PdfVariant var;
EPdfContentsType type;
while (tok.ReadNext(type, token, var)) {
//etc.但是我对PdfContentsTokenizer tok(page);有问题,它不能正常工作。对于一些pdf文件,它运行平稳,而对于另一个文件,它在inffas32.asm文件中抛出inffas32.asm错误,669行:
L_get_length_code_mmx:
pand mm4,mm0
movd eax,mm4
movq mm4,mm3
mov eax, [ebx+eax*4]//this is the error line顺便说一下,我注意到不是每个pdf文件都是以相同的方式编码的。例如,使用podofobrowser,我无法从官方的podofo helloworld示例中看到Hello World!文本。对于其他pdf文件,podofobrowser以不同的方式显示文本,或者根本没有显示它。
发布于 2017-03-20 11:44:53
ad1. 指向修补程序文件的链接,它允许使用TextExtractor。对pdf中的文本进行外部修饰。
在从pdf中提取非unicode文本时,这是最重要的一行:
PdfString unicode = pCurFont->GetEncoding()->ConvertToUnicode( rString, pCurFont );ad2.问题在于构建错误的zlib库。我斥责它,重建了波多佛,问题就消失了。
https://stackoverflow.com/questions/41877609
复制相似问题