Oracle 如何从pdf中获取保留原始格式的文本(使用CTX_DOC)?
我使用此代码从Oracle 如何从pdf中获取保留原始格式的文本(使用CTX_DOC)?,oracle,plsql,pdf-parsing,bfile,Oracle,Plsql,Pdf Parsing,Bfile,我使用此代码从pdf文件中过滤文本: create or replace directory pdf_dir as '&1'; create or replace directory l_curr_dir as '&3'; declare ll_clob CLOB; l_bfile BFILE; l_filename VARCHAR2(200) := '&2'; begin begin ctx_ddl.drop_prefere
pdf
文件中过滤文本:
create or replace directory pdf_dir as '&1';
create or replace directory l_curr_dir as '&3';
declare
ll_clob CLOB;
l_bfile BFILE;
l_filename VARCHAR2(200) := '&2';
begin
begin
ctx_ddl.drop_preference('testfilter');
ctx_ddl.drop_policy('testdimac_policy1');
exception when others then
null;
end;
ctx_ddl.create_preference('testfilter', 'AUTO_FILTER');
ctx_ddl.create_policy('testd_policy1', 'testfilter');
l_bfile := bfilename('PDF_DIR', l_filename);
dbms_lob.fileopen(l_bfile);
ctx_doc.policy_filter(
policy_name => 'test_policy1'
, document => l_bfile
, restab => ll_clob
, plaintext => true
, CHARSET => 'US7ASCII'
);
DBMS_XSLPROCESSOR.clob2file (ll_clob,'L_CURR_DIR' , '&4');
/
这个解决方案很好,对我来说很有效,但是有没有办法获得表格数据,现在它是逐短语或逐行过滤文本
例如,如果pdf包含以下值:
Name: Amount
Pradeep 100 USD
我希望输出保持原样,但当前设置会提供如下输出:
Name:
Amount
Pradeep
100 USD
有没有办法获得pdf
中文本的原始格式
是否可以通过“按原样输出”更改过滤器?我猜您指的是通过PDF阅读器查看时的显示方式。据我所知,Oracle没有内置的PDF查看器;数据存储为数据,您正在运行的查询正在返回。。。。数据。谢谢你的评论。即使我认为Oracle目前也无法支持格式化文本。