我的图像宽330像素,高472像素。我想把这个图像旅馆绘制成一个比当前图片大55%的更大的画布。我怎样才能算出最终的图像宽度和高度。
答案 0 :(得分:1)
这更像是数学问题,而不是编程问题。让我们抽象地处理它以得到一个公式:
我们的变量是:
oldWidth,oldHeight,newWidth,newHeight,percentBigger
原始画布尺寸为
oldCanvasSize = oldWidth * oldHeight
新的画布尺寸为
newCanvasSize = newWidth + newHeight
55%更大意味着155%或1.55所以
percent = (percentBigger + 1)
新画布是旧画布的百分之一,所以我们有
newCanvasSize = percent * oldCanvasSize
或
newCanvasSize = (percentBigger + 1) * oldCanvasSize
我假设我们希望比例保持不变,所以
oldWidth / oldHeight = newWidth / newHeight
通过替换并求解上述方程,我们得到了
newWidth = SquareRoot(percentBigger + 1) * oldWidth
newHeight = SquareRoot(percentBigger + 1) * oldHeight
我让读者插入数值。