当前位置: 首页 > wzjs >正文

网站建设(信奈辉煌电商)seo搜外

网站建设(信奈辉煌电商),seo搜外,建设网站等于网络营销吗,一天赚2000加微信常用的PDF文档解析解决方案有两种。 一是通过文档结构读取解析,另一种是通过ocr技术处理。 这里我们主要说一下文档读取解析的方案,现在常用的解析库有mupdf、pdfium、Aspose等第三方库来处理。其中mupdf、pdfium为开源、免费的。Aspose是一款收费的商业…

常用的PDF文档解析解决方案有两种。
一是通过文档结构读取解析,另一种是通过ocr技术处理。
这里我们主要说一下文档读取解析的方案,现在常用的解析库有mupdf、pdfium、Aspose等第三方库来处理。其中mupdf、pdfium为开源、免费的。Aspose是一款收费的商业库。
下边我们分别说一说各种库的使用。

mupdf
库编译以及链接至项目中这里就不做介绍了我们主要说一下使用该库做文本提取,代码示例如下:

std::string strPath = "pdf.pdf";
fz_context* ctx = fz_new_context(NULL, NULL, FZ_STORE_UNLIMITED);
fz_register_document_handlers(ctx);
fz_document* doc = fz_open_document(ctx, strPath.c_str());
int nCount = fz_count_pages(ctx, doc);
if (nCount > 0)
{//这里我们只演示第一页数据的获取,如果需要获取其他页的则自行处理fz_stext_page* text_page = fz_new_stext_page(ctx, fz_bound_page(ctx, page));fz_device* device = fz_new_stext_device(ctx, text_page, NULL);fz_run_page(ctx, page, device, fz_identity, NULL);fz_stext_block* block;SStringW sstrData;for (block = text_page->first_block; block; block = block->next){if (block->type == FZ_STEXT_BLOCK_TEXT){fz_stext_line* line;for (line = block->u.t.first_line; line; line = line->next){fz_stext_char* ch;for (ch = line->first_char; ch; ch = ch->next){//获取字符SStringW sstrChar;sstrChar.Format(L"%c", ch->c);sstrData += sstrChar;     //获取字体std::string strFont = ch->font->name;//其他参数获取可自行实现,具体能获取那些可参考fz_stext_char结构,比如颜色、大小、位置等数据//TODO:                                                                                                        }    sstrData += L"\n";        }        }  }
}

pdfium
代码示例如下:

std::string strPath = "pdf.pdf";
FPDF_InitLibrary();
FPDF_DOCUMENT document = FPDF_LoadDocument(strPath.c_str(), nullptr);
if (!document)
{//error
}
int nCount = FPDF_GetPageCount(document);
if (nCount > 0)
{//这里我们只演示第一页数据的获取,如果需要获取其他页的则自行处理FPDF_PAGE page = FPDF_LoadPage(document, 0); // 加载第一页 (索引 0)if (page) {std::wstring wstrText; FPDF_TEXTPAGE text_page = FPDFText_LoadPage(page);if (text_page){int char_count = FPDFText_CountChars(text_page);for (int i = 0; i < char_count; ++i) {unsigned short ch = FPDFText_GetUnicode(text_page, i);wchar_t wide_char = static_cast<wchar_t>(ch);wstrText += wide_char;}FPDFText_ClosePage(text_page);     }             }
}

在实际使用中发现使用mupdf解析文本时每一个block即为一段落的文本。但是在pdfium中获取的文本为整页中的所有文本,如果要划分段落则需要使用者自己根据字符的位置信息自己做归类处理。

Aspose
代码示例如下:

if (!System::IO::File::Exists(u"Example1.pdf"))
{//文件不存在
}
auto extractor = MakeObject<Facades::PdfExtractor>();
extractor->BindPdf(u"Example1.pdf");
extractor->ExtractText();auto memStream = MakeObject<System::IO::MemoryStream>();
extractor->GetText(memStream);auto unicode = System::Text::Encoding::get_Unicode();
String allText = unicode->GetString(memStream->ToArray());
http://www.dtcms.com/wzjs/466859.html

相关文章:

  • 自适应网站设计案例济南seo网站排名优化工具
  • 门户网站做济南seo整站优化招商电话
  • 长沙公积金网站怎么做异动免费域名邮箱
  • 有哪些网站可以做印度市场调研今日国内重大新闻
  • 招聘网站做竞品分析seo技术是什么意思
  • 自己如何创立网站网络营销推广的目的
  • win7用iis搭建网站网站建站流程
  • 少儿免费学编程的网站短视频营销成功的案例
  • wordpress 清楚jq深圳优化seo
  • 河北提供网站建设公司电话二十条疫情优化措施
  • 移动网站开发源代码seo公司是什么
  • 无锡网站建设营销型南京百度网站快速优化
  • 做nba直播网站网络优化推广公司哪家好
  • 昆山做网站价格唐山建站公司模板
  • 做网站的服务器带宽一般多少广告优化师培训
  • 淘宝做链接的网站爱站seo查询软件
  • jsp网站开发实例标题栏google推广 的效果
  • 中企动力做网站一次性付款郑州网站建设专业乐云seo
  • 长春专业做网站的公司最新域名ip地址
  • seo的中文是什么seo交流qq群
  • 南阳做网站多少电话引流推广平台软件
  • 网站建站方案书长春网站建设 4435
  • 三桥网站建设中国搜索引擎排行榜
  • wordpress网站搭建教程高报师培训机构排名
  • 网站单页在线seo网站管理
  • 淮北做网站的公司有哪些灰色行业推广
  • 网站备案去哪里备案搜索关键词排名推广
  • 网站推送怎么做软件编程培训学校排名
  • wordpress头像缓存到本地长尾词seo排名
  • 成都手机号码销售网站建设app开发费用一览表