InDesign转曲字体 导出PDF的技巧

在数字出版领域, InDesign是一个独特的存在, 它的所有功能几乎都能从Photoshop中找到对应, 但又比Photoshop好用多了.

在编辑部担任美术编辑的时候, 我遇到了很意思的问题, 一些拥有漂亮曲线的字体, 是无法被InDesign直接输出的, 只有将字体通过ctrl+shift+o"转曲"后,才能完美输出, 然而更有意思的是, 字体转曲后, 就变得无法修改...

按照"不重复造轮子"的原则, 我请教了上一届的前辈, 前辈的操作是, 选中特殊字体,通过ctrl+shift+o, 挨个进行转曲操作! 前辈确实比我勤快...

从一个程序员的角度, InDesign这种蛋疼的设定, 自然是无法接受的, 懒人的直觉告诉我, 一定有批量转曲的方法, 类似编程中的"中间件", 完成作品时, 将作品一键"转曲"输出为PDF

经过我的一顿查找, 还真把问题解决了, 过程如下:

1. 在文档主页,绘制透明矩形框

2. 设置透明度拼合

编辑-> 透明度拼合预设

新建预设-> 为预设命名-> 矢量100 -> 线状图和文本分辨率1600-> 渐变和网格分辨率 400-> 勾选将所有文本转换为轮廓-> 勾选将所有描边转换为轮廓

确定预设属性信息


3. 使用预设 导出

文件->导出

选择文件导出位置

高级-> 兼容性Acrobat 4(PDF 1.3)-> 透明度拼合预设zhaoolee -> 导出

导出完成

总结

懒是第一生产力.
无论学编程, 还是学Adobe的软件, 不同的领域, 类似的问题,解决问题的思路,大多是相通的,有了正确的方向, 就能更好的解决问题(更好的偷懒...).
InDesign与Photoshop相比, 最大的优势就是高效, 我是一个很业余的设计爱好者, 如果完成一份画册的初稿, 用Photoshop需要4个小时, InDesign只需要1个小时, InDesign还是专业呢~

放一张, 我花费1个多小时,使用InDesign完成的, 毕业季画册初稿截图

这年头, 不懂点设计, 都不敢说自己是程序猿...

本文永久更新地址:

https://fangyuanxiaozhan.com/p/2021-01-25-22/

Python写给前端的脚本!网站图片素材中文转英文

  • 写网页的时候, 我们经常需要使用图片素材, 图片素材如果是中文名, 挂到服务器会会引发乱码, 我们需要将图片名称改为英文字符才可以使用
  • 而起名是一个世界级难题, 为图片素材起英文名更是一件极其蛋疼的事
  • 有些人英语不好, 直接用拼音命名, 而拼音闹出的笑话更是无法计量...

最近接手了一个项目, 图片素材全部是中文命名, 为了避开起名的困扰, 我写了一个脚本,问题迎刃而解, 这里分享给大家

脚本解决的问题

  • 可以为中文命名的图片起一个英文名
  • 可以批量为当前目录及其子目录下图片自动生成新的英文名
  • 新的英文名图片会被输出到新的目录, 不会对原素材有丝毫影响

源码

import os
import re
import copy
import shutil
from googletrans import Translator


# 获取当前目录下所有的css文件路径
def getAllMd (file_dir):
    all_whole_path_files = []
    for root, dirs, files in os.walk(file_dir):
        for file in files:
            try:
                if (file[-4:] == ".png") or (file[-4:] == ".jpg"):
                    file_info = [root+'/', file]
                    all_whole_path_files.append(file_info)
            except Exception as e:
                print(e)
    return all_whole_path_files


# 将中文转换为英文
def getRepName(path_file):
    # 暂时保留后缀
    extension_name = ''
    extension_name = path_file[1].split(".")[-1]
    # 无后缀的文件名
    path_file[1] = path_file[1][0:-len(extension_name)-1]
    # 实例化翻译
    translator = Translator()
    tmp_en_name = translator.translate(path_file[1], dest='en').text
    # 将数字和字母保存到最终的字符串中, 遇到空格则替换为中划线保存
    en_name = ''
    for en_name_str in tmp_en_name:
        # 将大写字母转换为小写字母
        en_name_str = en_name_str.lower()
        # 保留小写字母
        if re.match('[a-z]', en_name_str):
            en_name += en_name_str
        # 将空格转换为"-"
        elif en_name_str == " ":
            en_name += "-"
        else:
            pass
    # 补充后缀名
    path_file[1] = en_name + '.' + extension_name
    return path_file


# 根据相对路径及新旧英文名 创建新文件
def createNewFile(whole_path_file, new_whole_path_file):
    # 在图片的同级目录, 创建一个enName的文件夹
    if os.path.exists(whole_path_file[0] + "./enName/"):
        pass
    else:
        os.makedirs(whole_path_file[0]+ "./enName/")
    # 拷贝创建新的文件
    shutil.copyfile(whole_path_file[0]+whole_path_file[1], new_whole_path_file[0]+"./enName/"+new_whole_path_file[1])


def main():
    all_whole_path_files = getAllMd('./')
    for whole_path_file in all_whole_path_files:
        # 获取英文名
        new_whole_path_file = getRepName(copy.deepcopy(whole_path_file))
        print("旧的路径和英文名:", whole_path_file, "新的路径和英文名:", new_whole_path_file)
        # 根据相对路径及新旧英文名创建新文件
        createNewFile(whole_path_file, new_whole_path_file)


if __name__ == '__main__':
    main()

这个脚本只是解决了我的问题, 如果有新的需求, 欢迎到这个脚本对应的Github提交需求, 也欢迎点个星, https://github.com/zhaoolee/zhToEnName

本文永久更新地址:

https://fangyuanxiaozhan.com/p/2020-01-25-21/

B站黑白滤镜

如果想让网页变黑白,可以学习B站的做法!

style="filter: grayscale(100%);"

本文永久更新地址:

https://fangyuanxiaozhan.com/p/2020-01-25-20/