OFD文件在线预览-vue3插件

BestOfdview

ofd 查看器

OFD是由工业和信息化部软件司牵头中国电子技术标准化研究院成立的版式编写组制定的版式文档国家标准,属于中国的一种自主格式,要打破政府部门和党委机关电子公文格式不统一,以方便的进行电子文档的存储、读取以及编辑 。

介绍

BestOfdview 是一款开源的 ofd 查看器,支持 vue3,主要功能有:

  • 支持 ofd 文件格式的解析,包括解析出 ofd 文档的基本信息、解析出 ofd 文档中的文字、表格、签名等内容。
  • 支持 ofd 文件格式的渲染,包括将 ofd 文档中的文字、表格、签名等内容渲染成可视化的页面。
  • 支持 ofd 文件格式的签名验证,包括对 ofd 文档的签名进行验证,验证签名是否正确。
  • 支持vue3,支持vite项目和webpack项目(>=0.4.0)

下载

在线预览地址

安装

npm i bestofdview

使用(>=0.4.0)

<template>
  <div class="ofd-view-container">
    <OfdView
      :showOpenFileButton="showOpenFileButton"
      :ofdLink="ofdLink"
    ></OfdView>
  </div>
</template>
<script setup lang="ts">
import { OfdView } from "bestofdview";
import "bestofdview/dist/style.css";

defineProps<{ showOpenFileButton: boolean; ofdLink?: string }>();
</script>
<style scoped>
.ofd-view-container {
  width: 100%;
  height: 100%;
}
</style>

安装依赖 (<0.4.0 需要安装依赖)

npm i  jszip-utils jszip @lapo/asn1js sm-crypto ofd-xml-parser  js-md5 js-sha1 jsrsasign core-js web-streams-polyfill

使用(<0.4.0 按如下方式安装)

创建 src/views/OfdView.vue 文件,并引入组件:

<template>
  <div class="ofd-view-container">
    <OfdView></OfdView>
  </div>
</template>
<script setup lang="ts">
import { OfdView } from 'bestofdview'
import 'bestofdview/src/assets/main.css'
import 'bestofdview/src/polyfills'
import 'sm-crypto'
import 'jsrsasign'
import 'ofd-xml-parser'
import 'jszip'
import 'jszip-utils'
import 'js-md5'
import 'js-sha1'
</script>
<style scoped>
.ofd-view-container {
  width: 100%;
  height: 100vh;
}
</style>

添加路由:src/router/index.ts 中添加路由:

{
  path: '/ofd-view',
  name: 'OfdView',
  component: () => import('@/views/OfdView.vue')
}

bestofdview API

属性名类型说明默认值
showOpenFileButtonboolean是否显示打开 ofd 文档按钮true
ofdLinkstringofd 文档链接
sealClickFunction给印章添加点击事件

预览

工具栏说明:打开外部ofd、首页、上一页、当前页码、总页数、下一页、最后一页、缩小、放大、选择显示比例、全屏、打印、下载、证书列表
点击页面印章,会显示印章的详细信息
在这里插入图片描述

贡献

欢迎提交 PR,共建开源 ofd 查看器。如果使用中出现问题,可以发邮件 besthqs@qq.com

版本更新说明

  • 2025.1.18(0.3.12) 对工具栏图标增加了禁用显示,如果没有打开ofd文件,工具栏的图标是灰色,不可用
  • 2025.1.21(0.3.13) 部分发票,完全使用 svg 填充,需要取资源中的 FillColor,否则不填充,导致不显示
  • 2025.1.21(0.3.14) 表格如果设置了底纹,本处显示时,去掉了底纹,需要判断 drawParam 是否有值
  • 2025.2.27(0.3.15) 工具栏增加了按比例显示功能、全屏、打印、下载、证书列表按钮
  • 2025.3.15(0.3.16) 解决部分发票无法显示图片的问题
  • 2025.3.16(0.3.17) 解决部分发票无法显示表格线的问题
  • 2025.3.24(0.4.1) 原来版本只支持 vite 项目,现在支持 webpack 项目,并且支持 vue3
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值