/ / Converter retrato em paisagem com clipe / trilhos e preenchimento da esquerda-direita para a nova imagem - rubi-sobre-trilhos, rubi, imagem, imagem mágica, clipe de papel

Converte Retrato para Paisagem com Paperclip / Rails e preenchimento da esquerda para a direita para nova imagem - ruby-on-rails, ruby, image, imagemagick, paperclip

Estou usando Paperclip e Rails.Atualmente, se um usuário carrega uma imagem de retrato, o clipe de papel corta a parte superior e inferior da imagem e "força" a seção do meio para se ajustar aos meus estilos definidos (fornecidos abaixo).

O que eu quero, no entanto, é que a imagem do retrato sejapreservado e adicione "espaçamento" à esquerda e à direita da imagem. Basicamente, preservando a imagem do retrato dentro de uma nova imagem da paisagem. Até agora, só encontrei exemplos de imagens simplesmente giratórias. Veja os exemplos abaixo:

insira a descrição da imagem aqui

insira a descrição da imagem aqui

insira a descrição da imagem aqui

Aqui estão minhas informações de estilos:

has_attached_file :image,
:styles => { thumb: "100x100#",
medium: "300x300>",
display: "759x506#" }

Atualmente não tenho nenhum pré / pós-processador ou interpolação aplicada.

Respostas:

3 para resposta № 1

De acordo com os documentos ImageMagick você pode conseguir isso com o -extent opção, por exemplo:

convert input.jpg -resize 800x600 -background black -compose Copy 
-gravity center -extent 800x600 -quality 92 output.

De acordo com os documentos Paperclip, agora você pode adicionar os sinalizadores de linha de comando relevantes para clipes de papel da seguinte maneira. Por exemplo, para :medium:

has_attached_file :image, :styles => { thumb: "100x100#",
medium: "300x300>",
display: "759x506#" },
:convert_options => { all: "-background black -compose Copy -gravity center"
medium:  "-extent 300x300"}