ExtractAItoTEXT 提取Adobe illustrator AI文件中的文字到文本文件翻译并写回到Adobe illustrator AI文件
Extract Text from Adobe illustrator to text for translate and write back to Adobe illustrator after translate in text file.
Originally script from marceloliao@hotmail.com during his work in SDL.
Updated by me.
从Adobe illustrator中提取文本以进行翻译,并在文本文件中翻译后写回Adobe illustrator。
原始脚本来自marceloliao@hotmail.com在SDL工作期间的创造。
由我更新。
Trados第三方插件也是支持Adobe illustrator导出Word文档并翻译的,插件叫做Sysfilter也是很有名的插件,价格大约400刀,在Trados不支持Visio,Photoshop格式之前,很多公司都是用Sysfilter来处理的。
Adobe illustrator script usually placed in its installation folder, example version 2023:
C:\Program Files\Adobe\Adobe Illustrator 2023\Presets
and under Presets locate language folder:
zh_CN or en_US or others depends on the language version you installed
And under language folder locate:
Scripts or ‘脚本’ folder
Adobe illustrator通常放在其安装文件夹中,例如版本2023:
C:\Program Files\Adobe\Adobe Illustrator 2023\Presets
在“预设”下找到语言文件夹:
zh_CN或en_US或其他取决于您安装的语言版本
在语言文件夹下找到:
脚本或“文件”文件夹
So for Adobe Illustrator 2023 Chinese version it is:
C:\Program Files\Adobe\Adobe Illustrator 2023\Presets\zh_CN\脚本
and English version is:
C:\Program Files\Adobe\Adobe Illustrator 2023\Presets\en_US\Scripts
因此,对于Adobe Illustrator 2023中文版来说:
C:\Program Files\Adobe\Adobe Illustrator 2023\Presets\zh_CN\脚本
英文版本为:
C:\Program Files\Adobe\Adobe Illustrator 2023\Presets\en_US\Scripts
Marcelo’s version supports multiple file but need manually open all files in Illustrator but if the file amount is too large to fill all your screen, that will be a big problem.
So I adjusted the script to open files from a folder and after export or import close the file and save memory.
Marcelo的版本支持多个文件,但需要在Illustrator中手动打开所有文件,但如果文件量太大,将填满所有屏幕,那将是一个大问题。
所以我调整了脚本,从文件夹中打开文件,导出或导入后关闭文件并节省内存。
Adobe Illustrator script 由main函数启动加载
function main()
{
}
因此添加遍历并打开文件
var folderPath = Folder.desktop.fsName + "/test/"; var folder = new Folder(folderPath); if (folder.exists)
{var files = folder.getFiles("*.ai"); // .ai 文件 for (var i = 0; i < files.length; i++) {var filePath = files[i].fsName; try {app.open(new File(filePath)); //做点什么 ,导入或者导出textapp.documents[0].close(SaveOptions.DONOTSAVECHANGES);} catch (e){alert("打开文件时出错: " + filePath + "\n" + e.message); } }alert("All content extracted!");
}
else
{ alert("文件夹不存在: " + folderPath);
}
The basic theroy is from and Illustrator file: example.ai export the text layers to text file named example.ai.txt.
After translate the text file, script tried to find file example.ai.txt and import back to example.ai
基本原理是从和Illustrator文件:example.ai将文本层导出到名为example.ai.txt的文本文件中。
翻译完文本文件后,脚本试图找到文件example.ai.txt并导入回example.ai
The structre of the text file is like:
文本文件的结构如下:
[BEGIN _0 1111111111111111111111111111111111111 BEGIN]
1111111111111111111111111111111111111
[END _0 1111111111111111111111111111111111111 END][BEGIN _0 是非成败转头空,青山依旧在,惯看秋月春风。一壶浊酒喜相逢,古今多少事,滚滚长江东逝水,浪花淘尽英雄。 几度夕阳红。白发渔樵江渚上,都付笑谈中。<br>滚滚长江东逝水,浪花淘尽英雄。是非成败转头空,青山依旧在,几度夕阳红。白发渔樵江渚上,惯看秋月春风。一壶浊酒喜相逢,古今多少事,都付笑谈中。<br>是非成败转头空,青山依旧在,惯看秋月春风。一壶浊酒喜相逢,古今多少事,滚滚长江东逝水,浪花淘尽英雄。 几度夕阳红。白发渔樵江渚上,都付笑谈中。<br>滚滚长江东逝水,浪花淘尽英雄。是非成败转头空,青山依旧在,几度夕阳红。白发渔樵江渚上,惯看秋月春风。一壶浊酒喜相逢,古今多少事,都付笑谈中。<br>是非成败转头空,青山依旧在,惯看秋月春风。一壶浊酒喜相逢,古今多 BEGIN]
是非成败转头空,青山依旧在,惯看秋月春风。一壶浊酒喜相逢,古今多少事,滚滚长江东逝水,浪花淘尽英雄。 几度夕阳红。白发渔樵江渚上,都付笑谈中。<br>滚滚长江东逝水,浪花淘尽英雄。是非成败转头空,青山依旧在,几度夕阳红。白发渔樵江渚上,惯看秋月春风。一壶浊酒喜相逢,古今多少事,都付笑谈中。<br>是非成败转头空,青山依旧在,惯看秋月春风。一壶浊酒喜相逢,古今多少事,滚滚长江东逝水,浪花淘尽英雄。 几度夕阳红。白发渔樵江渚上,都付笑谈中。<br>滚滚长江东逝水,浪花淘尽英雄。是非成败转头空,青山依旧在,几度夕阳红。白发渔樵江渚上,惯看秋月春风。一壶浊酒喜相逢,古今多少事,都付笑谈中。<br>是非成败转头空,青山依旧在,惯看秋月春风。一壶浊酒喜相逢,古今多
[END _0 是非成败转头空,青山依旧在,惯看秋月春风。一壶浊酒喜相逢,古今多少事,滚滚长江东逝水,浪花淘尽英雄。 几度夕阳红。白发渔樵江渚上,都付笑谈中。<br>滚滚长江东逝水,浪花淘尽英雄。是非成败转头空,青山依旧在,几度夕阳红。白发渔樵江渚上,惯看秋月春风。一壶浊酒喜相逢,古今多少事,都付笑谈中。<br>是非成败转头空,青山依旧在,惯看秋月春风。一壶浊酒喜相逢,古今多少事,滚滚长江东逝水,浪花淘尽英雄。 几度夕阳红。白发渔樵江渚上,都付笑谈中。<br>滚滚长江东逝水,浪花淘尽英雄。是非成败转头空,青山依旧在,几度夕阳红。白发渔樵江渚上,惯看秋月春风。一壶浊酒喜相逢,古今多少事,都付笑谈中。<br>是非成败转头空,青山依旧在,惯看秋月春风。一壶浊酒喜相逢,古今多 END][BEGIN _0 例:5环电阻 依次为:红黄红黑金 读为242Ω 误差为±0.5%<br>例:5环电阻 依次为:橙白黄红银 读为39400Ω=39.4K 误差为±10%<br>例:5环电阻 依次为:橙橙红金红 其中橙橙红为332Ω在乘上0.1=33.2Ω 误差为±2% <br>从以上得知,读第四色环为金或银色一定要注意,因为它是乘的负数。<br>关于误差率:本软件误差率的得数须乘上100,如算出误差得数显示0.02在乘上100=2% BEGIN]
例:5环电阻 依次为:红黄红黑金 读为242Ω 误差为±0.5%<br>例:5环电阻 依次为:橙白黄红银 读为39400Ω=39.4K 误差为±10%<br>例:5环电阻 依次为:橙橙红金红 其中橙橙红为332Ω在乘上0.1=33.2Ω 误差为±2% <br>从以上得知,读第四色环为金或银色一定要注意,因为它是乘的负数。<br>关于误差率:本软件误差率的得数须乘上100,如算出误差得数显示0.02在乘上100=2%
[END _0 例:5环电阻 依次为:红黄红黑金 读为242Ω 误差为±0.5%<br>例:5环电阻 依次为:橙白黄红银 读为39400Ω=39.4K 误差为±10%<br>例:5环电阻 依次为:橙橙红金红 其中橙橙红为332Ω在乘上0.1=33.2Ω 误差为±2% <br>从以上得知,读第四色环为金或银色一定要注意,因为它是乘的负数。<br>关于误差率:本软件误差率的得数须乘上100,如算出误差得数显示0.02在乘上100=2% END]
The text repeated three times
The beginning
[BEGIN _0 **xxx** BEGIN]
The main content
---------------------------------------------------------(only translate in this part)
---------------------------------------------------------(仅翻译此段)
The ending
[END _0 **xxx** END]
最后项目地址:
https://github.com/Dark-20001/ExtractAItoTEXT/
相关文章:
ExtractAItoTEXT 提取Adobe illustrator AI文件中的文字到文本文件翻译并写回到Adobe illustrator AI文件
Extract Text from Adobe illustrator to text for translate and write back to Adobe illustrator after translate in text file. Originally script from marceloliaohotmail.com during his work in SDL. Updated by me. 从Adobe illustrator中提取文本以进行翻译&#x…...
ms17-010 ms12-020 ms-08-067
MS17-010是一个由微软发布的安全公告编号,它指代了一个严重级别的安全漏洞,该漏洞存在于Microsoft Windows的Server Message Block 1.0 (SMBv1)协议处理中。这个漏洞被命名为“永恒之蓝”(EternalBlue),因为它最初是由…...
【海思Hi3403V100】多目拼接相机套板硬件规划方案
海思Hi3403V100 是专业超高清智能网络摄像头 SoC。该芯片最高支持四路 sensor 输入,支持最高 4K60fps 的 ISP 图像处理能力,支持 3F 、WDR、多级降噪、六轴防抖、硬件拼接、多光谱融合等多种传统图像增强和处理算法,支持通过AI 算法对输入图像…...
AI的赚钱风向,彻底变了!
从2023年3月起,生成式AI技术的浪潮席卷全球,让不少人开始焦虑中国AI技术与美国的差距。然而,最近的趋势显示,AI创业的盈利模式已经发生了根本性的变化。今年,我们见证了AIGC(人工智能生成内容)企…...
服务器重启后jenkins任务内容不见了,并且新建任务也不见了
服务器centos7.4 背景:服务器异常重启后,jenkins上面的任务只剩下一些前端项目,后端的任务都不展示了,jenkins版本是Jenkins 2.346.3 解决方案:根据显示,jenkins很多的插件引用失败,显示需要升…...
如何选择合适的WordPress主机?
选择合适的WordPress主机需要考虑多个因素,包括性能、速度、存储空间、带宽、硬件配置、操作系统、支持的软件版本以及安全性等。以下是一些详细的建议: 性能和速度:选择一个能够提供快速加载速度和稳定性能的主机至关重要。快速加载的网站不…...
面试突击:Java 集合知识体系梳理
本文已收录于:https://github.com/danmuking/all-in-one(持续更新) 前言 哈喽,大家好,我是 DanMu。在 Java 开发中,集合类对象绝对是被使用最频繁的对象之一。因此,深入了解集合类对象的底层数…...
AI智能管理系统设计文档
AI智能管理系统设计文档 1. 引言 本设计文档旨在开发一套全面的AI智能管理系统,以优化生产运营效率和决策质量。该系统将利用先进的AI技术和数据分析能力,提供自动化流程控制、预测性维护、智能决策支持等功能。 2. 需求分析与目标设定 2.1 业务需求…...
干涉阵型成图参数记录【robust】
robust 这个玩意经常忘记,就是取2的时候是更加显示大尺度的结构,取-2更加显示小尺度结果,一般取0就是正常就好了...
React Native工程运行时下载gradle超时问题
React Native工程在运行Android的时候会下载gradle,但是由于众所周知的问题,总是下载失败,这时可以通过修改 <APP_ROOT>/android/wrapper/gradle-wrapper.properties 文件中 distributionUrl 参数使用国内 gradle 镜像来提高下载速度。…...
本地离线模型搭建指南-LLaMA-Factory训练框架及工具
搭建一个本地中文大语言模型(LLM)涉及多个关键步骤,从选择模型底座,到运行机器和框架,再到具体的架构实现和训练方式。以下是一个详细的指南,帮助你从零开始构建和运行一个中文大语言模型。 本地离线模型搭…...
数智化金融采购系统特点
数智化金融采购系统是郑州信源公司结合众多金融行业采购特点,采用流程优化再造的理念,为银行、保险、证券、交易所等金额机构打造的细分行业产品,助力金融行业采购合规管理、风险防范、成本管理和效率提升。 系统特点 1、全业务覆盖&#x…...
使用 SwiftUI 为 macOS 创建类似于 App Store Connect 的选择器
文章目录 前言创建选择器组件使用选择器组件总结前言 最近,我一直在为我的应用开发一个全新的界面,它可以让你查看 TestFlight 上所有可用的构建,并允许你将它们添加到测试群组中。 作为这项工作的一部分,我需要创建一个组件,允许用户从特定构建中添加和删除测试群组。我…...
Python26 Lambda表达式
1.什么是lambda表达式 lambda 是 Python 中的一个关键字,用于定义简单的匿名函数。与 def 关键字定义的标准函数不同,lambda 函数主要用于需要一个函数对象作为参数的简短操作。lambda 函数的设计哲学是简洁,因此它只能包含一条表达式&#…...
2024年数据、自动化与智能计算国际学术会议(ICDAIC 2024)
全称:2024年数据、自动化与智能计算国际学术会议(ICDAIC 2024) 会议网址:http://www.icdaic.com 会议地点: 厦门 投稿邮箱:icdaicsub-conf.com投稿标题:ArticleTEL。投稿时请在邮件正文备注:学生投稿&#…...
cuda 学习笔记4
一 基本函数 在GPU上开辟空间,无论定义的数据是float还是int ,还是****gpu_int,分配空间的函数都是下面固定的形式 (void**)& 1.函数定义,global void 是配套使用的,是在GPU上定义,也就是GPU上执行,CPU上调用的函数…...
ZSWatch 开源项目介绍
前言 因为时不时逛 GitHub 会发现一些比较不错的开源项目,突发奇想想做一个专题,专门记录开源项目,内容不限于组件、框架以及 DIY 作品,希望能坚持下去,与此同时,也会选取其中的开源项目做专题分析。希望这…...
Ansible-综合练习-生产案例
斌的招儿 网上教程大多都是官网模板化的教程和文档,这里小斌用自己实际生产环境使用的例子给大家做一个详解。涉及到一整套ansible的使用,对于roles的使用,也仅涉及到tasks和files目录,方便大家快速上手并规范化管理。 0.环境配置…...
lombok关于构造器的注解的坑【避坑】
文章目录 背景问题问题解决 背景 平时,我们不定义构造器时,会自动创建一个无参的构造器。 当我们提供了任意有参构造器后,将不再自动创建无参构造器。 问题 为了方便创建对象并同时赋值,使用了全参构造器的注解NoArgsConstruct…...
指针并不是用来存储数据的,而是用来存储数据在内存中地址(内存操作/函数指针/指针函数)
推荐:1、4、5号书籍 1. 基本概念 首先,让小明了解指针的基本概念: 指针的定义:指针是一个变量,它存储的是另一个变量的地址。指针的声明:例如,int *p表示一个指向整数的指针变量p。 2. 形象…...
变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析
一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …...
基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销,平衡网络负载,延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...
23-Oracle 23 ai 区块链表(Blockchain Table)
小伙伴有没有在金融强合规的领域中遇见,必须要保持数据不可变,管理员都无法修改和留痕的要求。比如医疗的电子病历中,影像检查检验结果不可篡改行的,药品追溯过程中数据只可插入无法删除的特性需求;登录日志、修改日志…...
sqlserver 根据指定字符 解析拼接字符串
DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...
【C语言练习】080. 使用C语言实现简单的数据库操作
080. 使用C语言实现简单的数据库操作 080. 使用C语言实现简单的数据库操作使用原生APIODBC接口第三方库ORM框架文件模拟1. 安装SQLite2. 示例代码:使用SQLite创建数据库、表和插入数据3. 编译和运行4. 示例运行输出:5. 注意事项6. 总结080. 使用C语言实现简单的数据库操作 在…...
【python异步多线程】异步多线程爬虫代码示例
claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...
[Java恶补day16] 238.除自身以外数组的乘积
给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O(n) 时间复杂度…...
LeetCode - 199. 二叉树的右视图
题目 199. 二叉树的右视图 - 力扣(LeetCode) 思路 右视图是指从树的右侧看,对于每一层,只能看到该层最右边的节点。实现思路是: 使用深度优先搜索(DFS)按照"根-右-左"的顺序遍历树记录每个节点的深度对于…...
管理学院权限管理系统开发总结
文章目录 🎓 管理学院权限管理系统开发总结 - 现代化Web应用实践之路📝 项目概述🏗️ 技术架构设计后端技术栈前端技术栈 💡 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 🗄️ 数据库设…...
AI病理诊断七剑下天山,医疗未来触手可及
一、病理诊断困局:刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断",医生需通过显微镜观察组织切片,在细胞迷宫中捕捉癌变信号。某省病理质控报告显示,基层医院误诊率达12%-15%,专家会诊…...
