色温计算公式.docx

%CCT=7000K~25000K

CCT= CCT-200;

if CCT<7000

    Xt=-4.607*(10^9/CCT^3)+2.9678*(10^6/CCT^2)+0.09911*(10^3/CCT)+0.244063;

    Yt=-3*Xt^2+2.87*Xt-0.275;

else

    Xt=-2.0064*(10^9/CCT^3)+1.9018*(10^6/CCT^2)+0.24748*(10^3/CCT)+0.237040;

    Yt=-3*Xt^2+2.87*Xt-0.275;

end

 

 

%三原色的色品坐标

Xr=0.6894;

Yr=0.3049;

Xg=0.1763;

Yg=0.7248;

Xb=0.1370;

Yb=0.0663;

 

a=1/Yr;b=1/Yg;c=1/Yb;d=Xr/Yr;

e=Xg/Yg;f=Xb/Yb;h=1/Yt;i=Xt/Yt;

x=(i-d)*(c-a)-(h-a)*(f-d);

y=(e-d)*(c-a)-(b-a)*(f-d);

z=(i-d)*(b-a)-(h-a)*(e-d);

w=(f-d)*(b-a)-(c-a)*(e-d);

Kg=x/y;Kb=z/w;Kr=1-Kg-Kb;

r=Kr*120*65535/374.8[L1] *0.8;

g=Kg*120*65535/795.8[L2] *0.8;

b=Kb*120*65535/113.3[L3] *0.8;


 [L1]原红色亮度,Lr

 [L2]原绿色亮度,Lg

 [L3]原蓝色亮度,Lb

转载于:https://www.cnblogs.com/carl2380/archive/2012/10/10/2718162.html

你的代码中调用了`merge_docx`函数,但是在调用之前并没有定义该函数,因此导致了`NameError: name 'merge_docx' is not defined`错误。 为了解决这个问题,你应该把`merge_docx`函数定义提到调用的前面,或者把它定义在另一个文件中并且在当前文件中导入。如下所示: ``` import os from openpyxl import load_workbook import docx # 合并docx文件 def merge_docx(file_list, merged_file_name): # 如果合并后的文件已存在,则直接返回 if os.path.exists(merged_file_name): return # 创建合并后的文档对象 merged_doc = docx.Document() # 合并文件内容 for file_name in file_list: doc = docx.Document(file_name) for para in doc.paragraphs: merged_doc.add_paragraph(para.text) for table in doc.tables: merged_doc.add_table(table.rows, table.columns) # 保存合并后的文档 merged_doc.save(merged_file_name) # 读取Excel文件 workbook = load_workbook(filename=r'D:\好记薪\工商资料生成\表格.xlsx') sheet = workbook['需调用文档'] # 判断C列是否为空 if sheet['C2'].value: # 合并A、B文档 merge_docx(['A.docx', 'B.docx'], 'AB.docx') if sheet['C3'].value or sheet['C4'].value or sheet['C5'].value or sheet['C6'].value: # 合并A、B、C文档 merge_docx(['A.docx', 'B.docx', 'C.docx'], 'ABC.docx') if sheet['C7'].value: # 合并A、B、C、D文档 merge_docx(['A.docx', 'B.docx', 'C.docx', 'D.docx'], 'ABCD.docx') if sheet['C8'].value: # 合并A、B、C、E文档 merge_docx(['A.docx', 'B.docx', 'C.docx', 'E.docx'], 'ABCE.docx') ``` 这样就可以避免`NameError: name 'merge_docx' is not defined`错误。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值