KFB格式转化为SVS格式(python、可批量转化)

本文介绍了一种使用Python脚本convert_kfb2svs.py批量将KFB格式文件转换为SVS格式的方法,通过指定源文件夹、目标文件夹和转换级别,用户可以在Windows系统上自动化处理多个KFB文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

工作中用到kfb格式的转化 网上的方法都只能单张图片转化且文档老旧,所以想找一个可以批量处理的转化方法同时更加便捷。

首先下载这个文件https://github.com/wilmerwang/SLFCD/releases,在里面选中

将文件存放在任意位置 

适用系统:32位/64位windows系统

1)安装VS2010 vcredist_x86

2)系统:window server 2003以上版本

X32,X64皆可

3)系统配置:内存1G以上

关于1)中的安装方式,点进文件夹双击即可

同时,编写如下代码,这个脚本会遍历源文件夹中的所有KFB文件,并将它们转换为SVS格式,然后保存到目标文件夹中。

import os
import sys
import subprocess
from time import time

def main():
    # 检查参数数量是否正确
    if len(sys.argv) != 4:
        raise ValueError('Example: convert_kfb2svs.py [src_folder_name] [des_folder_name] [level]')

    # 指定转换工具的路径
    exe_path = '.\\kfb2tif2svs\\x86\\KFbioConverter.exe'
    if not os.path.exists(exe_path):
        raise FileNotFoundError('Could not find conversion tool.')

    # 解析命令行参数
    _, src_folder_name, des_folder_name, level = sys.argv

    # 检查级别参数是否在正确范围内
    if not 2 <= int(level) <= 9:
        raise ValueError('Level must be between 2 and 9.')

    # 获取当前工作目录
    pwd = os.getcwd()

    # 构建源文件夹和目标文件夹的完整路径
    full_path = os.path.join(pwd, src_folder_name)
    dest_path = os.path.join(pwd, des_folder_name)

    # 检查源文件夹是否存在
    if not os.path.exists(full_path):
        raise FileNotFoundError(f'Could not find directory: {src_folder_name}')

    # 如果目标文件夹不存在,则创建
    if not os.path.exists(dest_path):
        os.makedirs(dest_path)

    # 获取源文件夹中所有的KFB文件列表
    kfb_list = [f for f in os.listdir(full_path) if f.endswith('.kfb')]

    print(f'Found {len(kfb_list)} slides, transferring to SVS format ...')
    for elem in kfb_list:
        st = time()
        kfb_elem_path = os.path.join(full_path, elem)
        svs_dest_path = os.path.join(dest_path, elem.replace('.kfb', '.svs'))

        # 构建转换命令
        command = [exe_path, kfb_elem_path, svs_dest_path, level]

        print(f'Processing {elem} ...')
        # 执行转换命令
        subprocess.run(command, check=True)

        print(f'Finished {elem}, time: {time() - st}s ...')

if __name__ == "__main__":
    main()

将下载的文件和脚本文件按如下方式存放。

在命令行中运行时,需要提供三个参数,例如:

python convert_kfb2svs.py source_folder_name destination_folder_name 3

其中source_folder_name是包含KFB文件的源文件夹的名称,destination_folder_name是SVS文件将要保存的目标文件夹的名称,3是转换级别。

参考资料:https://github.com/xjw00654/convert_kfb2svs/blob/master/convert_kfb2svs.py

                   https://github.com/wilmerwang/SLFCD/releases

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值