Skip to content

Commit

Permalink
Merge pull request AUTOMATIC1111#7564 from w-e-w/configurable_image_d…
Browse files Browse the repository at this point in the history
…ownscale

Configurable JPG downscale threshold
  • Loading branch information
AUTOMATIC1111 authored Feb 19, 2023
2 parents 1646991 + fe33be6 commit e572c3e
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 3 deletions.
12 changes: 10 additions & 2 deletions modules/images.py
Original file line number Diff line number Diff line change
Expand Up @@ -575,9 +575,17 @@ def _atomically_save_image(image_to_save, filename_without_extension, extension)

image.already_saved_as = fullfn

target_side_length = 4000
try:
target_side_length = int(opts.target_side_length)
except ValueError:
target_side_length = 4000
try:
img_downscale_threshold = float(opts.img_downscale_threshold)
except ValueError:
img_downscale_threshold = 4

oversize = image.width > target_side_length or image.height > target_side_length
if opts.export_for_4chan and (oversize or os.stat(fullfn).st_size > 4 * 1024 * 1024):
if opts.export_for_4chan and (oversize or os.stat(fullfn).st_size > img_downscale_threshold * 1024 * 1024):
ratio = image.width / image.height

if oversize and ratio > 1:
Expand Down
4 changes: 3 additions & 1 deletion modules/shared.py
Original file line number Diff line number Diff line change
Expand Up @@ -325,7 +325,9 @@ def list_samplers():
"save_images_before_highres_fix": OptionInfo(False, "Save a copy of image before applying highres fix."),
"save_images_before_color_correction": OptionInfo(False, "Save a copy of image before applying color correction to img2img results"),
"jpeg_quality": OptionInfo(80, "Quality for saved jpeg images", gr.Slider, {"minimum": 1, "maximum": 100, "step": 1}),
"export_for_4chan": OptionInfo(True, "If PNG image is larger than 4MB or any dimension is larger than 4000, downscale and save copy as JPG"),
"export_for_4chan": OptionInfo(True, "If PNG image is larger than Downscale threshold or any dimension is larger than Target length, downscale the image to dimensions and save a copy as JPG"),
"img_downscale_threshold": OptionInfo(4, "Downscale threshold (MB)"),
"target_side_length": OptionInfo(4000, "Target length"),

"use_original_name_batch": OptionInfo(True, "Use original name for output filename during batch process in extras tab"),
"use_upscaler_name_as_suffix": OptionInfo(False, "Use upscaler name as filename suffix in the extras tab"),
Expand Down

0 comments on commit e572c3e

Please sign in to comment.