Шрифты, изготовленные из Python с Nanoemoji, создают только буквы G-Z и разные в браузерахPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Шрифты, изготовленные из Python с Nanoemoji, создают только буквы G-Z и разные в браузерах

Сообщение Anonymous »

У меня есть сценарий Python, который предназначен для создания цветовых шрифтов с Nanoemoji. Тем не менее, это только создает буквы G-Z (иногда он правильно показывает E-Z), и они отличаются в Chrome и Firefox. Вот скриншот того, что в Firefox и в Chrome. Я проверил, что файлы SVG не неправильно настроены или что -то в этом роде и даже проверяли изображения для букв, которые не отображаются для других Letesr, и они появляются там просто отлично. Но, кажется, ничто не появляется для букв a-f (иногда просто A-D). < /P>
Я читаю свои файлы из файла CSV, который соответствует буквам. Я также попытался добавить текстовый файл, который отображает буквы с их Unicode, но это не помогло. Вот сценарий: < /p>
import os
import shutil
import pandas as pd
import subprocess

# === CONFIGURATION ===
csv_path = r"C:\pathtocsv.csv"
build_dir = "build"
output_dir = r"directory"

def parse_csv(csv_path):
df = pd.read_csv(csv_path, header=0)
font_name = df.iloc[0, 0].strip()
char_map = {}
for col in df.columns[1:]:
char = col.strip()
if len(char) == 1 and char.isalpha() and char.isupper():
svg_path = df[col].iloc[0]
if pd.notna(svg_path) and svg_path.strip():
cleaned_path = svg_path.strip()
if os.path.exists(cleaned_path):
char_map[char] = cleaned_path
else:
print(f"❌ File not found for '{char}': {cleaned_path}")
return font_name, char_map

def copy_svgs_to_build(char_map):
os.makedirs(build_dir, exist_ok=True)
svg_files = []
debug_map = {}
for char, src_path in char_map.items():
hex_code = f"u{ord(char):04X}"
dest_name = f"{hex_code}-{char}.svg"
dest_path = os.path.join(build_dir, dest_name)
shutil.copyfile(src_path, dest_path)
svg_files.append(dest_path)
debug_map[char] = src_path # ✅ Log the original file path for the letter
print(f"✅ {char} → {dest_path}")
return svg_files, debug_map

def write_toml(font_name):
toml_path = os.path.join(build_dir, f"{font_name}.toml")
with open(toml_path, "w", encoding="utf-8") as f:
f.write("[build]\n")
f.write(f'family = "{font_name}"\n')
f.write('output_format = "woff2"\n') #

Подробнее здесь: https://stackoverflow.com/questions/796 ... -different
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»