Oracle Apex PDF查看器
我是Oracle Apex的新手。我需要帮助在Oracle APEX中显示PDF。我有一个问题:我已经把PDF上传到数据库了。我将PDF保存为数据库中的blob。之后,我在经典报告中显示了PDF的名称。当我点击该名称时,我想看到我上传的PDF的预览。 现在我正在寻找一种方法来显示带有代码的PDF。有人能帮忙吗 我需要上一个和下一个按钮Oracle Apex PDF查看器,oracle,pdf,oracle-apex,Oracle,Pdf,Oracle Apex,我是Oracle Apex的新手。我需要帮助在Oracle APEX中显示PDF。我有一个问题:我已经把PDF上传到数据库了。我将PDF保存为数据库中的blob。之后,我在经典报告中显示了PDF的名称。当我点击该名称时,我想看到我上传的PDF的预览。 现在我正在寻找一种方法来显示带有代码的PDF。有人能帮忙吗 我需要上一个和下一个按钮 如何在该地区显示此PDF?以下是我使用APEX\u应用程序\u TEMP\u文件快速创建的一个示例。希望这就是你想要实现的。 用户名:demo 密码:demo
如何在该地区显示此PDF?以下是我使用
APEX\u应用程序\u TEMP\u文件快速创建的一个示例。希望这就是你想要实现的。
用户名:demo
密码:demo
这使用了Mozilla的项目。这里有一个你可能需要的快速配方
创建一个文件浏览
页面项,并将存储类型设置为表APEX\u应用程序\u TEMP\u文件
创建页面按钮以提交页面
创建经典报告区域并输入以下查询:
select
id
, filename
from apex_application_temp_files
where application_id = :APP_ID
添加虚拟列并设置HTML表达式:
<button type="button" class="btn-preview-pdf" data-id="#ID#">Preview</button>
对于操作,还设置受影响的元素:
a。选择类型:jQuery选择器
b。jQuery选择器:#预览窗格
遵循Joel Kallman关于创建下载文件的链接的介绍。您将需要一个应用程序流程(DOWNLOADPDF
)和一个应用程序项(FILE\u ID
)应用程序流程DOWNLOADPDF
的修改代码如下所示:
begin
for file in (select *
from apex_application_temp_files
where id = :FILE_ID) loop
--
sys.htp.init;
sys.owa_util.mime_header( file.mime_type, FALSE );
sys.htp.p('Content-length: ' || sys.dbms_lob.getlength( file.blob_content));
sys.htp.p('Content-Disposition: attachment; filename="' || file.filename || '"' );
sys.htp.p('Cache-Control: max-age=3600'); -- tell the browser to cache for one hour, adjust as necessary
sys.owa_util.http_header_close;
sys.wpg_docload.download_file( file.blob_content );
apex_application.stop_apex_engine;
end loop;
end;
差点错过这个。在页面属性中,将JavaScript文件URL设置为任何CDN。例如:
//cdnjs.cloudflare.com/ajax/libs/pdf.js/2.0.550/pdf.min.js
请注意,这是一个非常基本的原型。预览仅允许您查看第一页。您将需要找出允许多页查看的选项,然后执行必要的操作。我会让你去弄清楚的
应该是这样。如果对你不起作用,请告诉我 下面是我使用APEX\u应用程序\u TEMP\u文件快速创建的一个示例
。希望这就是你想要实现的。
用户名:demo
密码:demo
这使用了Mozilla的项目。这里有一个你可能需要的快速配方
创建一个文件浏览
页面项,并将存储类型设置为表APEX\u应用程序\u TEMP\u文件
创建页面按钮以提交页面
创建经典报告区域并输入以下查询:
select
id
, filename
from apex_application_temp_files
where application_id = :APP_ID
添加虚拟列并设置HTML表达式:
<button type="button" class="btn-preview-pdf" data-id="#ID#">Preview</button>
对于操作,还设置受影响的元素:
a。选择类型:jQuery选择器
b。jQuery选择器:#预览窗格
遵循Joel Kallman关于创建下载文件的链接的介绍。您将需要一个应用程序流程(DOWNLOADPDF
)和一个应用程序项(FILE\u ID
)应用程序流程DOWNLOADPDF
的修改代码如下所示:
begin
for file in (select *
from apex_application_temp_files
where id = :FILE_ID) loop
--
sys.htp.init;
sys.owa_util.mime_header( file.mime_type, FALSE );
sys.htp.p('Content-length: ' || sys.dbms_lob.getlength( file.blob_content));
sys.htp.p('Content-Disposition: attachment; filename="' || file.filename || '"' );
sys.htp.p('Cache-Control: max-age=3600'); -- tell the browser to cache for one hour, adjust as necessary
sys.owa_util.http_header_close;
sys.wpg_docload.download_file( file.blob_content );
apex_application.stop_apex_engine;
end loop;
end;
差点错过这个。在页面属性中,将JavaScript文件URL设置为任何CDN。例如:
//cdnjs.cloudflare.com/ajax/libs/pdf.js/2.0.550/pdf.min.js
请注意,这是一个非常基本的原型。预览仅允许您查看第一页。您将需要找出允许多页查看的选项,然后执行必要的操作。我会让你去弄清楚的
应该是这样。如果对你不起作用,请告诉我 这是工作!谢谢你,你救了我的命。如何更改为多页查看?我已更新演示以显示案例分页。这是一个粗糙的解决方案。我会在另一个时间更新文章的细节。同时,看看新的按钮和JavaScript。如前所述,技巧在于页面呈现函数和它所采用的页码参数。这将有助于您思考如何使用自己的这个。我看到了演示。很酷。我只需要上一个。按下一个按钮。你能告诉我详细情况吗?谢谢分享下一个和上一个按钮代码,谢谢@Adrian PIt的工作!谢谢你,你救了我的命。如何更改为多页查看?我已更新演示以显示案例分页。这是一个粗糙的解决方案。我会在另一个时间更新文章的细节。同时,看看新的按钮和JavaScript。如前所述,技巧在于页面呈现函数和它所采用的页码参数。这将有助于您思考如何使用自己的这个。我看到了演示。很酷。我只需要上一个。按下一个按钮。你能告诉我详细情况吗?谢谢分享下一个和上一个按钮代码,谢谢@Adrian P