我目前正在尝试使用batik rasterizer库将一些.svg图像渲染为.png / .jpg图像 .

如果我尝试在宽高比内转换图像,一切正常,但是当我尝试更改宽高比时(假设矢量图像是二次的,例如32x32,我想将它拉伸到64x32),它给了我一个输出大小为64x32像素的图像,矢量在图像中间绘制为32x32区域 . 这是我正在使用的代码:

PNGTranscoder transcoder = new PNGTranscoder();

transcoder.addTranscodingHint(PNGTranscoder.KEY_WIDTH, width); //64px
transcoder.addTranscodingHint(PNGTranscoder.KEY_HEIGHT, height); //32px

此外,我想使用转码提示 PNGTranscoder.KEY_MAXWIDTH 来拉伸图像,直到它的宽度为128像素,与其高度不同,但是ranscoder只是不会将图像缩放到此宽度 .

我究竟做错了什么?