FFitLumen
Сценарии

Сценарии работы с кодом · Вписывание изображения в пиксельную рамку

03
Вокруг ваших задач

Конкретная отправная точка

Впишите изображение в пиксельную рамку с целыми размерами от 1 до 1000000. Проверьте портрет, альбом и нечётные поля, отклоняя субпиксельный результат и округляя размер вниз до центрирования.

01

Откройте контекст

Выберите папку проекта и обозначьте нужные файлы или поведение.

02

Опишите изменение

Укажите входные данные, ожидаемый результат и границы, которые нужно сохранить.

03

Изучите работу

Проверьте предлагаемые изменения и команды, прежде чем полагаться на результат.

04

Проверьте результат

Сравните фактическое поведение с ожидаемым. Если проверка не проходит, разберитесь в причине перед следующими изменениями.

Вписывание изображения в пиксельную рамку

Конкретная отправная точка
def fit_box(image_width, image_height, box_width, box_height):
    values = (image_width,image_height,box_width,box_height)
    if any(type(v) is not int or not 1 <= v <= 1000000 for v in values):
        raise ValueError("dimensions 1 through 1000000")
    if image_width*box_height > image_height*box_width:
        width, height = box_width, image_height*box_width//image_width
    else:
        width, height = image_width*box_height//image_height, box_height
    if not width or not height: raise ValueError("subpixel result")
    return (box_width-width)//2, (box_height-height)//2, width, height

Пример — отправная точка для реального проекта, а не утверждение, что сгенерированный код уже протестирован. Адаптируйте пути, зависимости и ожидаемое поведение к своему приложению.

Рабочая среда с ИИ для кода

Здесь начинается ваше следующее изменение.

Скачать для Windows ↗