Merge pull request #10273 from AUTOMATIC1111/roboto-without-a-dep

Vendor Roboto font
This commit is contained in:
AUTOMATIC1111 2023-05-11 11:25:23 +03:00 committed by GitHub
commit 4445314c68
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 15 additions and 20 deletions

BIN
modules/Roboto-Regular.ttf Normal file

Binary file not shown.

View File

@ -13,17 +13,24 @@ import numpy as np
import piexif import piexif
import piexif.helper import piexif.helper
from PIL import Image, ImageFont, ImageDraw, PngImagePlugin from PIL import Image, ImageFont, ImageDraw, PngImagePlugin
from fonts.ttf import Roboto
import string import string
import json import json
import hashlib import hashlib
from modules import sd_samplers, shared, script_callbacks, errors from modules import sd_samplers, shared, script_callbacks, errors
from modules.paths_internal import roboto_ttf_file
from modules.shared import opts from modules.shared import opts
LANCZOS = (Image.Resampling.LANCZOS if hasattr(Image, 'Resampling') else Image.LANCZOS) LANCZOS = (Image.Resampling.LANCZOS if hasattr(Image, 'Resampling') else Image.LANCZOS)
def get_font(fontsize: int):
try:
return ImageFont.truetype(opts.font or roboto_ttf_file, fontsize)
except Exception:
return ImageFont.truetype(roboto_ttf_file, fontsize)
def image_grid(imgs, batch_size=1, rows=None): def image_grid(imgs, batch_size=1, rows=None):
if rows is None: if rows is None:
if opts.n_rows > 0: if opts.n_rows > 0:
@ -142,12 +149,6 @@ def draw_grid_annotations(im, width, height, hor_texts, ver_texts, margin=0):
lines.append(word) lines.append(word)
return lines return lines
def get_font(fontsize):
try:
return ImageFont.truetype(opts.font or Roboto, fontsize)
except Exception:
return ImageFont.truetype(Roboto, fontsize)
def draw_texts(drawing, draw_x, draw_y, lines, initial_fnt, initial_fontsize): def draw_texts(drawing, draw_x, draw_y, lines, initial_fnt, initial_fontsize):
for line in lines: for line in lines:
fnt = initial_fnt fnt = initial_fnt

View File

@ -3,7 +3,8 @@
import argparse import argparse
import os import os
script_path = os.path.dirname(os.path.dirname(os.path.realpath(__file__))) modules_path = os.path.dirname(os.path.realpath(__file__))
script_path = os.path.dirname(modules_path)
sd_configs_path = os.path.join(script_path, "configs") sd_configs_path = os.path.join(script_path, "configs")
sd_default_config = os.path.join(sd_configs_path, "v1-inference.yaml") sd_default_config = os.path.join(sd_configs_path, "v1-inference.yaml")
@ -12,7 +13,7 @@ default_sd_model_file = sd_model_file
# Parse the --data-dir flag first so we can use it as a base for our other argument default values # Parse the --data-dir flag first so we can use it as a base for our other argument default values
parser_pre = argparse.ArgumentParser(add_help=False) parser_pre = argparse.ArgumentParser(add_help=False)
parser_pre.add_argument("--data-dir", type=str, default=os.path.dirname(os.path.dirname(os.path.realpath(__file__))), help="base path where all user data is stored",) parser_pre.add_argument("--data-dir", type=str, default=os.path.dirname(modules_path), help="base path where all user data is stored", )
cmd_opts_pre = parser_pre.parse_known_args()[0] cmd_opts_pre = parser_pre.parse_known_args()[0]
data_path = cmd_opts_pre.data_dir data_path = cmd_opts_pre.data_dir
@ -21,3 +22,5 @@ models_path = os.path.join(data_path, "models")
extensions_dir = os.path.join(data_path, "extensions") extensions_dir = os.path.join(data_path, "extensions")
extensions_builtin_dir = os.path.join(script_path, "extensions-builtin") extensions_builtin_dir = os.path.join(script_path, "extensions-builtin")
config_states_dir = os.path.join(script_path, "config_states") config_states_dir = os.path.join(script_path, "config_states")
roboto_ttf_file = os.path.join(modules_path, 'Roboto-Regular.ttf')

View File

@ -3,9 +3,7 @@ import json
import numpy as np import numpy as np
import zlib import zlib
from PIL import Image, ImageDraw, ImageFont from PIL import Image, ImageDraw, ImageFont
from fonts.ttf import Roboto
import torch import torch
from modules.shared import opts
class EmbeddingEncoder(json.JSONEncoder): class EmbeddingEncoder(json.JSONEncoder):
@ -136,11 +134,8 @@ def caption_image_overlay(srcimage, title, footerLeft, footerMid, footerRight, t
image = srcimage.copy() image = srcimage.copy()
fontsize = 32 fontsize = 32
if textfont is None: if textfont is None:
try: from modules.images import get_font
textfont = ImageFont.truetype(opts.font or Roboto, fontsize) textfont = get_font(fontsize)
textfont = opts.font or Roboto
except Exception:
textfont = Roboto
factor = 1.5 factor = 1.5
gradient = Image.new('RGBA', (1, image.size[1]), color=(0, 0, 0, 0)) gradient = Image.new('RGBA', (1, image.size[1]), color=(0, 0, 0, 0))

View File

@ -2,8 +2,6 @@ astunparse
blendmodes blendmodes
accelerate accelerate
basicsr basicsr
fonts
font-roboto
gfpgan gfpgan
gradio==3.29.0 gradio==3.29.0
numpy numpy

View File

@ -11,8 +11,6 @@ torch
omegaconf==2.2.3 omegaconf==2.2.3
pytorch_lightning==1.9.4 pytorch_lightning==1.9.4
scikit-image==0.19.2 scikit-image==0.19.2
fonts
font-roboto
timm==0.6.7 timm==0.6.7
piexif==1.1.3 piexif==1.1.3
einops==0.4.1 einops==0.4.1