1
我正在處理照片應用程序,我需要一些建議,我應該如何使用Graphics/ImageMagick解決以下問題。GraphicsMagick裁剪:顯示將裁剪的內容
- 考慮到與分辨率的照片:2048×1536
- 給出一個指定的分辨率:1864x1228
- 調整圖像的大小和與圖像填充指定的分辨率(現在是1864x1398)
- 亮點原來的區域圖像將被裁剪(以1864x1228)
我有調整大小,並適當地裁剪圖像的工作溶液:
IMOperation resizeOp = new IMOperation();
resizeOp.addImage();
resizeOp.resize(MAX_WIDTH, MAX_HEIGHT, "^");
resizeOp.gravity("center"); //centered image with crop the top/bottom parts
resizeOp.crop(MAX_WIDTH, MAX_HEIGHT, 0, 0);
resizeOp.addImage();
ConvertCmd cmd = new ConvertCmd(true);
cmd.run(resizeOp, fileName, outputFileName); //cropped, center filled image (1864x1228)
問題是我該如何做以下操作:顯示完整圖像而不是裁剪版本,並突出顯示圖像的區域將被裁剪。我更喜歡在裁剪圖像周圍使用紅色邊框,並使用alpha圖層裁剪部分進行顯示。
我有一個想法,我不太喜歡:從原始圖層生成一個圖像與阿爾法層,並把裁剪圖像與紅色邊框。它似乎並不是最佳的解決方案:)我的另一個想法是用javafx imageviews來做到這一點,但它似乎並不理想。
注:
- 我使用im4java與通用汽車。我接受一個命令行的解決方案太(我會弄清楚在im4java張貼;)
- 我們可以限制只左右水平圖像交談中,我可以找出垂直操作
任何評論都將受到高度讚賞。