easy operate OFD
Project description
easyofd
关于这个库:
鉴于目前python解析ofd没有啥好用的库所以决定自己整一个。
已实现功能 :
1 解析ofd
2 ofd转pdf
3 ofd转图片
4 pdf转ofd-暂不支持电子解析 关于 jb2格式图片解析 使用了第三方库 jbig2dec 去读取jb2格式图片 参考下面链接安装使用jbig2dec https://github.com/rillian/jbig2dec
:hand:实现参考文档
项目链接: https://github.com/renoyuan/easyofd
安装
pip install easyofd
ofd2pdf demo
#!/usr/bin/env python
#-*- coding: utf-8 -*-
#PROJECT_NAME: F:\code\easyofd\test
#CREATE_TIME: 2023-10-18
#E_MAIL: renoyuan@foxmail.com
#AUTHOR: reno
#note: use demo
import sys
import os
project_dir = os.path.join(os.path.dirname(os.getcwd()),"easyofd")
pkg_dir = os.path.dirname(os.getcwd())
sys.path.insert(0,project_dir)
sys.path.insert(0,pkg_dir)
import base64
from PIL import Image
import numpy as np
from easyofd.ofd import OFD
if __name__ == "__main__":
with open(r"增值税电子专票5.ofd","rb") as f:
ofdb64 = str(base64.b64encode(f.read()),"utf-8")
ofd = OFD()
ofd.read(ofdb64) # 读取ofd
# print(ofd.data)
pdf_bytes = ofd.to_pdf() # 转pdf
img_np = ofd.to_jpg() # 转图片
ofd.del_data()
with open(r"test.pdf","wb") as f:
f.write(pdf_bytes)
for idx, img in enumerate(img_np):
im = Image.fromarray(img)
im.save(f"test_img{idx}.jpg")
ps:
1 本库尚不完善使用需要谨慎,欢迎提各种Issue.
2 目前ofd 文件使用尚未普及,作者接触的文件也不多,遇到无法解析的文件,可以发我邮箱(renoyuan@foxmail.com),有时间会去优化版本.
版本规划:
1.0 计划重点在ofd 解析模块的完善 及ofd文档格式的转换 ofd2pdf ofd2img 等
2.0 计划完成ofdd文件绘制 以及其他文档转ofd pdf2ofd txt2ofd 等
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file easyofd-0.0.11.tar.gz.
File metadata
- Download URL: easyofd-0.0.11.tar.gz
- Upload date:
- Size: 45.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f8ee7c7743e4ec1de5b2a9a260de52aadec806d306bc5af6249c3dc0408a80d1
|
|
| MD5 |
5a2d3e4209942e061f1acb0bc42f4779
|
|
| BLAKE2b-256 |
b69f44b3bfd4b69345188fbafc60f5bf73d64d992f394cfae94386f9b9dbecf9
|
File details
Details for the file easyofd-0.0.11-py3-none-any.whl.
File metadata
- Download URL: easyofd-0.0.11-py3-none-any.whl
- Upload date:
- Size: 50.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
52cbac5adba0aba466ae7b960721d5615778eea036dbca29bb088baa5dcb275f
|
|
| MD5 |
8e43bcd590bec6981457132ed4a1b218
|
|
| BLAKE2b-256 |
8ad70e116f5587a1382fbdfdfa2e5e7004638616321e3183822afd943d42f0f4
|