0

私はGoogleマップで作業しています。マップにいくつかのポイントを追加しました。この写真をマーカーとして使用します。ここに画像の説明を入力

以下に私が今持っているものがあります:

今の様子

この写真の背景が白く、マップ上でうまく表示されないことに気付くかもしれません。白い背景 (およびロリポップの影) を削除する方法はありますか? よりもはるかに良く見えると思います。

多分、それは役に立つでしょう、私は以下の私のサブクラスのソースを投稿します:

    class PointsInMoskow extends ItemizedOverlay{
    private List<List<Address>> convertedAddresses=new ArrayList<List<Address>>();
    private List<OverlayItem> points=new ArrayList<OverlayItem>();
    private Drawable marker;

    public PointsInMoskow(Drawable marker){
        super(marker);
        this.marker=marker;

        try {
            convertedAddresses.add(geocoder.getFromLocationName("Москва, м.Фили", 2));
            convertedAddresses.add(geocoder.getFromLocationName("Москва, м.Площадь Революции", 2));
            convertedAddresses.add(geocoder.getFromLocationName("Москва, м. Калужская", 2));
            int latitude;
            int longitude;
            for (int i=0;i<3;i++) {
                List<Address> addressList=(List<Address>)convertedAddresses.get(i);
                if(addressList!=null && addressList.size()>0){
                    latitude=(int)(addressList.get(0).getLatitude()*1000000);
                    longitude=(int)(addressList.get(0).getLongitude()*1000000);
                    points.add(new OverlayItem(new GeoPoint(latitude, longitude), "title", "snippet"));
                }
            }
            populate();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }


    @Override
    protected OverlayItem createItem(int i) {
        return points.get(i);
    }

    @Override
    public int size() {
        return points.size();
    }
}
4

1 に答える 1

0

使用している画像は不透明な色を使用しています。マップが必要な部分を透けて見えるようにするには、元の画像で透明度を使用する必要があります。

これは実際にはプログラミングの問題ではありませんが、これを行う方法に関するチュートリアルがたくさんあります

http://fabiovisentin.com/tutorial/gimp_transparent_image/gimp_how_to_make_transparent_image.asp

もう 1 つのオプションは、Java で画像を操作することですが、必要な効果を得るのは難しい場合があります。画像を BitmapDrawable にロードして操作し、マーカーとして設定できます。

于 2011-11-12T17:05:10.730 に答える