office转pdf

## office转pdf
1.安装LibreOffice
2.安装python转打印格式 这步主要解决缩放模式
```
pip install pyexcel pyexcel-xls pyexcel-xlsx
pip install openpyxl

代码运行:python   a.py   --s=/home/zyh/python/test/test.xls  --o=/home/zyh/python/test/cc.xlsx
import argparse
import pyexcel as p
from openpyxl import workbook,load_workbook
from openpyxl.styles import *
import random
import os

parser = argparse.ArgumentParser()
parser.add_argument('--s', type=str, default = None)
parser.add_argument('--o', type=str, default=None)
args = parser.parse_args()
b=args.s.endswith(".xls")
ss=''
if b:
    ss='./'+str(random.random())+".xlsx"
    p.save_book_as(file_name=args.s,dest_file_name=ss)


print(args.s)
print(args.o)
if b:
    wb=load_workbook(ss)
else:
    wb=load_workbook(args.s)
#wb=load_workbook('aa.xlsx')

for sheet in  wb:
    print(sheet.title)
    ws=wb[sheet.title];
    ws.sheet_properties.pageSetUpPr.fitToPage=True  #加入句代码后问题解决
    ws.page_setup.fitToWidth=True
    ws.page_setup.fitToHeight=False  #可以直接将Ture/False设置为数字

wb.save(args.o)
if b:
    os.remove(ss)
```
3.转
/usr/local/bin/libreoffice7.5  --headless --convert-to pdf ./test.xls

你可能感兴趣的:(pdf,python,开发语言)