Blob格式图片显示很模糊

图片通过填报的方式插入oracle数据库,是Blob格式,然后在报表上展示图片的时候发现很模糊,除非把图片放很大才清晰。在不使用插件的情况下,有没有办法解决这个问题

FineReport LSQ000 发布于 2021-8-20 10:14 (编辑于 2021-8-20 10:27)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共3回答
最佳回答
0
LSQ000Lv5中级互助
发布于2021-9-6 10:49

在oracle创建一个blob转base64的函数

CREATE OR REPLACE Function BASE64ENCODE(Blob_In In Blob) Return clob Is I_CLOB CLOB; I_STEP PLS_INTEGER := 12000; Begin If Dbms_Lob.Getlength(Blob_In) Is Null THEN Return ''; End if; For I In 0 .. TRUNC((DBMS_LOB.GETLENGTH(Blob_In) - 1) / I_STEP) LOOP I_CLOB := I_CLOB || UTL_RAW.CAST_TO_VARCHAR2( UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.substr(Blob_In, I_STEP, I * I_STEP + 1 )) ); END LOOP; Return I_CLOB; END;

查询图片是调用该函数,如:

select BASE64ENCODE(img) path from tableName;

在A1单元格输出path列,B1单元格引用A1单元格,如:

"<img style = 'width:65%;height:60%;' src='data:image/png;base64,"+A1+"'>"

单元格B1用html格式显示,图片布局用适应

最佳回答
0
就TM你叫夏洛啊Lv6中级互助
发布于2021-8-20 10:23

别用BLOB格式,用bigblob格式,然后上传高清图片,别压缩。不清楚很大原因是图片本身就不是很清楚。

最佳回答
0
用户67006141Lv3见习互助
发布于2022-2-24 16:50

楼主,问一下,oracle数据库中存储的BLOB格式怎么展示。

  • 3关注人数
  • 821浏览人数
  • 最后回答于:2022-2-24 16:50
    请选择关闭问题的原因
    确定 取消
    返回顶部