Изменение размера и обрезка эскизов

Предупреждение

30 октября 2020 года API Поиска Bing переместились из Cognitive Services в службы Поиска Bing. Эта документация приводится только для справки. Обновленную информацию см. в документации по API Поиска Bing. Инструкции по созданию ресурсов Azure для Поиска Bing приведены в статье Создание ресурса для Поиска Bing с помощью Azure Marketplace.

Некоторые ответы API Поиска Bing содержат URL-адреса обслуживаемых Bing эскизов изображений, размер которых можно изменить или которые можно обрезать. Также ответы могут включать параметры запроса. Пример:

https://<host>/th?id=AMMS_92772df988...&w=110&h=73&rs=1&qlt=80&cdv=1&pid=16.1

Если вы отобразите подмножество таких эскизов, предоставьте возможность просмотра оставшихся изображений.

Примечание

При обрезке и изменении размера эскизов будет обеспечен сценарий поиска, учитывающий права третьих сторон, в соответствии с требованиями к использованию и отображению API Поиска Bing.

Изменение размера эскиза

Чтобы изменить размер эскиза, Bing рекомендует указать в URL-адресе эскиза только один параметр запроса: w (ширину) или h (высоту). Указание только высоты или ширины позволяет Bing сохранять исходные пропорции изображения. Укажите ширину и высоту в пикселях.

Например, если исходный эскиз имеет размер 480 x 620

https://<host>/th?id=JN.5l3yzwy%2f%2fHj59U6XhssIQ&pid=Api&w=480&h=620

и вы хотите уменьшить его, присвойте параметру w новое значение (например 336) и удалите параметр h:

https://<host>/th?id=JN.5l3yzwy%2f%2fHj59U6XhssIQ&pid=Api&w=336

Если указать только высоту или ширину эскиза, исходные пропорции изображения будут сохранены. Если указать оба параметра и пропорции не будут соблюдены, Bing добавит белые поля на границах изображения.

Например, при изменении изображения размером 480 x 359 до размера 200 x 200 без обрезки оно будет занимать все пространство в ширину, но в верхней и нижней его части будут белые поля по 25 пикселей. Если же изображение имеет размер 359 x 480, белые поля появятся с левой и правой стороны. При обрезке изображения белые поля не добавляются.

Ниже показано изображение эскиза в исходном размере (480 x 300).

Original landscape image

Ниже показано изображение, размер которого изменен до 200 x 200. Пропорции сохранены, а в верхней и нижней части добавлены белые поля (здесь вокруг добавлен черный контур, чтобы их было видно).

Resized landscape image

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

Запрос других размеров эскиза

Чтобы запросить другой размер эскиза изображения, удалите все параметры запроса из URL-адреса эскиза, кроме id и pid. Затем добавьте один из параметров запроса: &w (ширину) или &h (высоту), но не оба, указав нужный размер изображения в пикселях. Bing сохранит исходные пропорции изображения.

Чтобы увеличить ширину изображения в указанном выше URL-адресе на 165 пикселей, используйте следующий URL-адрес:

https://<host>/th?id=AMMS_92772df988...&w=165&pid=16.1

Если вы запрашиваете изображение, размер которого превышает исходный, Bing добавит к изображению белые поля, как необходимо. Например, если исходный размер изображения составляет 474 x 316 и для &w задано значение 500, Bing вернет изображение размером 500 x 333. Вокруг этого изображения будут белые поля шириной 8,5 пикселя сверху и снизу и 13 пикселей слева и справа.

Чтобы служба Bing не добавляла белые поля, если запрошенный размер изображения больше исходного, установите для параметра запроса &p значение 0. Например, если включить параметр &p=0 в приведенный выше URL-адрес, Bing вернет изображение размером 474 x 316 вместо 500 x 333:

https://<host>/th?id=AMMS_92772df988...&w=500&p=0&pid=16.1

Если задать оба параметра запроса: &w и &h, — Bing сохранит пропорции изображения и при необходимости добавит белые поля. Например, если исходный размер изображения составляет 474 x 316 и для параметров ширины и высоты задано значение 200 x 200 (&w=200&h=200), то Bing вернет изображение, содержащее белые поля шириной 33 пикселя сверху и снизу. Если включить параметр запроса &p, Bing возвращает изображение размером 200 x 134.

Обрезка эскиза

Чтобы обрезать изображение, добавьте параметр запроса c (обрезать). Можно использовать следующие значения:

  • 4 — слепое соотношение
  • 7 — интеллектуальное соотношение

Обрезка с интеллектуальным соотношением

Если вы запрашиваете обрезку с интеллектуальным соотношением (установив для параметра c значение 7), Bing обрежет изображение от центра интересующей области к краям, а также сохранит пропорции изображения. Интересующая область — это область изображения, где по определению Bing содержится самая важная часть. Ниже показан пример интересующей области.

Region of interest

Если при изменении размера вы запрашиваете обрезку с интеллектуальным соотношением, Bing уменьшит размер изображения до требуемого с сохранением пропорций. Затем Bing обрезает изображение с учетом измененного размера. Например, если размер по ширине меньше или равен высоте, Bing обрежет изображение слева и справа от центра интересующей области. В противном случае Bing обрежет изображение сверху и снизу от центра интересующей области.

Ниже показано изображение, уменьшенное до размера 200 x 200 с использованием обрезки Smart Ratio. Так как Bing измеряет изображение от верхнего левого угла, нижняя часть изображения обрезается.

Landscape image cropped to 200x200

Ниже показано изображение, уменьшенное до размера 200 x 100 с использованием обрезки Smart Ratio. Так как Bing измеряет изображение от верхнего левого угла, нижняя часть изображения обрезается.

Landscape image cropped to 200x100

Ниже показано изображение, уменьшенное до размера 100 x 200 с использованием обрезки Smart Ratio. Так как Bing измеряет изображение от центра, левая и правая части изображения обрезаются.

Landscape image cropped to 100x200

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

Обрезка со слепым соотношением

При запросе обрезки со слепым соотношением (установив для параметра c значение 4) Bing использует следующие правила обрезки изображения.

  • Если значение равно (Original Image Width / Original Image Height) < (Requested Image Width / Requested Image Height), изображение измеряется от верхнего левого угла и обрезается снизу.
  • Если значение равно (Original Image Width / Original Image Height) > (Requested Image Width / Requested Image Height), изображение измеряется от центра и обрезается справа и слева.

Ниже показано изображение в книжной ориентации размером 225 x 300.

Original sunflower image

Ниже показано изображение, уменьшенное до размера 200 x 200 с использованием обрезки Blind Ratio. Изображение измеряется от верхнего левого угла, и обрезается нижняя часть.

Sunflower image cropped to 200x200

Ниже показано изображение, уменьшенное до размера 200 x 100 с использованием обрезки Blind Ratio. Изображение измеряется от верхнего левого угла, и обрезается нижняя часть.

Sunflower image cropped to 200x100

Ниже показано изображение, уменьшенное до размера 100 x 200 с использованием обрезки Blind Ratio. Изображение измеряется от центра и обрезается с левой и правой сторон.

Sunflower image cropped to 100x200

Дальнейшие действия