画图-身份证

画图函数:

   base_dir = f'{main.BASE_DIR}/quality_management_logic/dataCenter/'
        self.draw.text((55, self.height * 0.31), self.personName, (0, 0, 0),
                       font=ImageFont.truetype(os.path.join(base_dir, 'msyh.ttc'),24))  #personname

应用:
# -*- coding: utf-8 -*-
# import random, string
# import datetime
from tkinter import *
import os
from PIL import Image,ImageDraw,ImageFont
from quality_management_logic.commonCenter.Pan import get_advance,yaml_w,month_trans
import main
#保存图片

class GUICard(object):
    def __init__(self):
        get_Advance = get_advance('YUANDING')
        self.personName = str(get_Advance.get('userName')).ljust(15, ' ')
        # self.personName='SHOUXINPASS'.ljust(15, ' ')
        self.fathersName = str(get_Advance.get('fatherName')).ljust(15, ' ')
        self.birthday = get_Advance.get('birthDate')
        self.panID = get_Advance.get('panNo')
        self.common_front_path = f'{main.BASE_DIR}/quality_management_logic/dataCenter/msyh.ttf'
        self.img_path = f'{main.BASE_DIR}/quality_management_logic/dataCenter/pancard_front.png'
        self.img = Image.open(self.img_path)
        self.draw = ImageDraw.Draw(self.img)
        self.width, self.height = self.img.size
    def InPutCard(self,path=f"{main.BASE_DIR}/quality_management_logic/dataCenter/pancard.jpg"):
        base_dir = f'{main.BASE_DIR}/quality_management_logic/dataCenter/'
        self.draw.text((55, self.height * 0.31), self.personName, (0, 0, 0),
                       font=ImageFont.truetype(os.path.join(base_dir, 'msyh.ttc'),24))  #personname
        self.draw.text((55 , self.height * 0.40), self.fathersName, (0, 0, 0),
                       font=ImageFont.truetype(os.path.join(base_dir, 'msyh.ttc'),24))   #fathername
        self.draw.text((self.width * 0.08, self.height * 0.50), self.birthday, (0, 0, 0),
                       font=ImageFont.truetype(os.path.join(base_dir, 'msyh.ttc'),24))   #brithday

        self.draw.text((self.width * 0.08, self.height * 0.63), self.panID, (0, 0, 0),
                       font=ImageFont.truetype(os.path.join(base_dir, 'msyh.ttc'),24))  #panid

        # ImageDraw.Draw(self.img)
        # imageFileSave =f"{main.BASE_DIR}/quality_management_logic/dataCenter/pancard.jpg"
        imageFileSave=path
        self.img.save(imageFileSave)
        # 写入yaml
        self.birthday1 = month_trans(self.birthday)
        ocrData = {"date_of_birth": self.birthday1, "pan_code": self.panID,
                   "pan_img1": "https://in.creditech.biz/image/fi360/0332747ff0385a210a97d702d5cb1d83.jpg",
                   "user_father_name": self.fathersName.strip(), "user_name": self.personName.strip()}
        yaml_w({"ocrData": ocrData, "userName": self.personName.strip(), "panNo": self.panID, "fatherName": self.fathersName.strip(),
                "birthDate": self.birthday})
        return imageFileSave

图:
在这里插入图片描述
接入前端:
在这里插入图片描述
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/kairui_guxiaobai/article/details/107067972