1

我正在尝试使用此库http://code.google.com/p/svg-android/将 SVG 导入 android。

到目前为止,这是我的代码:

public class main extends Activity {
    /** Called when the activity is first created. */

    ImageView iv;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        iv = (ImageView)findViewById(R.id.imageView1);
        SVG svg = SVGParser.getSVGFromResource(getResources(), R.raw.android);
        iv.setImageDrawable(svg.createPictureDrawable());

    }
}

它确实把 SVG 画的很好。但是我找不到如何缩放它的方法,例如,如果我希望它是 100 x 100 像素?

有任何想法吗?

4

1 回答 1

2

当您将 svg 绘制到 Canvas 中时,您可以轻松地缩放它们。所以一个可能的解决方案是在所需大小的位图上创建一个 Canvas,应用缩放操作,然后将图片渲染到它。

使用 svg.getPicture() 而不是 getPictureDrawable。根据 svg.getLimits()(不是 svg.getBounds())计算应用所需的比例。

于 2011-09-10T08:38:28.150 回答