我目前正在努力设置我的 SVG 标记的大小,它们显示得非常大,由于我的地图在 ACF 中设置的方式,我无法像在 JS 中那样修改大小。
谁能建议我修改 SVG 大小的方法?我真的不想使用 PNG,因为它们总是看起来质量很差,而且文件大小比 PNG 大得多。
下面是我的代码:
function add_marker( $marker, map ) {
// var
var latlng = new google.maps.LatLng( $marker.attr('data-lat'), $marker.attr('data-lng') );
var icon = $marker.attr('data-img');
// create marker
var marker = new google.maps.Marker({
position : latlng,
map : map,
icon : icon,
});
// add to array
map.markers.push( marker );
// if marker contains HTML, add it to an infoWindow
if( $marker.html() )
{
// create info window
var infowindow = new google.maps.InfoWindow({
content : $marker.html()
});
// show info window when marker is clicked
google.maps.event.addListener(marker, 'click', function() {
infowindow.open( map, marker );
});
}
}
<?php if( have_rows('locations') ): ?>
<div class="acf-map">
<?php while ( have_rows('locations') ) : the_row(); $location = get_sub_field('location'); ?>
<?php $location_type = get_sub_field( 'location_type' ); ?>
<?php if ($location_type == 'oxford-college') { ?>
<?php $type_icon = get_stylesheet_directory_uri().'/assets/images/icon-square.svg'; ?>
<?php } ?>
<div class="marker" data-lat="<?php echo $location['lat']; ?>" data-lng="<?php echo $location['lng']; ?>" data-img="<?php echo $type_icon; ?>">
<h4><?php the_sub_field('title'); ?></h4>
<p class="address"><?php echo $location['address']; ?></p>
<p><?php the_sub_field('description'); ?></p>
</div>
<?php endwhile; ?>
</div>
<?php endif; ?>
创建标记的区域是:
data-img="<?php echo $type_icon; ?>