Как мне подобрать образ для точного размера? Я не хочу искажать изображение, мне нужно поместить его на черный фон, и его нужно сосредоточить, будь то сторона сбоку или сверху вниз. Они изначально крупные изображения, которые мне нужно, чтобы получить до 25 пикселей в ширину на 32 пикселя.Magick ++: Fit image to size
Прямо сейчас я просто проверка по ширине и высоте, и выяснить, какие должны быть изменены:
InitializeMagick(*argv);
Image img(imgFilename);
// Check image dimensions
if (img.columns() > img.rows()) {
// wide image!
if (img.columns() > 25) {
img.resize(Magick::Geometry("25x"));
}
} else {
// tall image!
if (img.rows() > 32) {
img.resize(Magick::Geometry("x32"));
}
}
Я должен верить, что есть простой/лучший способ сделать это в то же время подгоняя его к 25px широкий холст 32px с изображением в центре. Как мне это сделать?
Кстати, я понимаю, что есть проблема с указанным выше кодом ... if img.columns() == img.rows() он всегда переходит во второй случай и размер изображения до 32, что isn ' t, так как это приведет к тому, что img.columns() также перейдет к 32, что находится за пределами требуемых 25 пикселей. Это то, что я предполагаю, что подгонка изображения позаботится. Я просто не знаю, как это сделать.