2014-06-22 10 views
28

Ho eseguito una buona quantità di research e ho trovato diverse "soluzioni" come static maps API e semplicemente inviando un collegamento a una Gmap. Tuttavia, non c'è davvero modo di mandare qualcuno a Google Map?Non c'è modo di incorporare una mappa di Google in un'e-mail HTML?

+1

Vuoi dire una mappa javascript o l'immagine di una mappa? Non è possibile che le mappe JavaScript funzionino nell'e-mail. –

+1

L'API di mappe statiche mi fornirà un'immagine della mia mappa da incorporare. Funzionerebbe bene. Comunque sto parlando di una mappa iframe integrata, reale, in una email HTML. – BenRacicot

risposta

26

Bene, la tua ricerca mostra che la maggior parte dei client di posta non esegue iFrame, quindi cosa pensi che si possa fare?

Questo è a proposito a proposito. iFrame e JavaScript sono i rischi per la sicurezza che i servizi di posta non vogliono gestire.

La soluzione migliore è ottenere un'immagine statica della mappa e embed come un'immagine in un'email HTML. Inserisci un link ipertestuale nella mappa "completa" su Google Maps.

farlo manualmente in Gmail:

  1. Vai http://staticmapmaker.com/google/ o simili
  2. Immettere la posizione
  3. Copiare l'immagine della mappa negli Appunti e incollarlo in una mail
  4. Copiare il href dell'ancora nella sezione "Mappa con collegamento a Google Maps"
  5. Selezionare l'intera immagine (posizionare il cursore a destra dell'immagine e premere spostamento + sinistra sulla
  6. Press Ctrl + k di collegamento ipertestuale all'immagine
  7. incollare l'URL dal passaggio 4 nel campo Indirizzo web
+1

Grazie per la risposta. E sicuramente i downvotes per aver portato questa domanda alla comunità ... sul serio. – BenRacicot

+1

Non ti ho minimizzato. La domanda era legittima per me. –

+0

Chi mi ha downvoted :) grazie Neil! – BenRacicot

10

È possibile creare una mappa immagine statica e inviarlo via email, facendolo in Perl: https://metacpan.org/pod/Geo::Google::StaticMaps::V2

o semplicemente direttamente da Google: https://developers.google.com/maps/documentation/static-maps/

dovrebbe essere qualcosa di simile in HTML parte della e-mail:

<img src="http://maps.googleapis.com/maps/api/staticmap?size=800x600&maptype=hybrid&scale=2&format=png8&sensor=false&path=geodesic%3Atrue%7C-6.9325%2C+37.3916666666667%7C-6.9325%2C+37.3933333333333%7C-6.93388888888889%2C+37.3933333333333%7C-6.93388888888889%2C+37.3916666666667%7C-6.9325%2C+37.3916666666667&zoom=10" width="800" height="600"/> 

Ho appena provato fuori e funziona come un fascino.

codice di esempio:

#!/usr/bin/perl 
use strict; 
use warnings; 
use feature ':5.10'; 
use utf8; 
use Geo::Converter::dms2dd qw { dms2dd }; 
use Geo::Google::StaticMaps::V2; 
my $map = Geo::Google::StaticMaps::V2->new(
width => 800, 
height => 600, 
sensor => 0, 
scale => 2, 
zoom  => 16, 
format => "png8", 
type  => "hybrid" 
); 

binmode(STDOUT, ":encoding(UTF-8)"); 
binmode(STDIN, ":encoding(UTF-8)"); 
$| = 1; 

my %c; 

$c{1} = [ '-6 55 57.00', '37 23 30.00' ]; 
$c{2} = [ '-6 55 57.00', '37 23 36.00' ]; 
$c{3} = [ '-6 56 02.00', '37 23 36.00' ]; 
$c{4} = [ '-6 56 02.00', '37 23 30.00' ]; 
$c{5} = [ '-6 55 57.00', '37 23 30.00' ]; 

my @location; 

foreach my $key (sort keys %c) { 
$c{$key}[0] = dms2dd ({value => $c{$key}[0], is_lat => 1}); 
$c{$key}[1] = dms2dd ({value => $c{$key}[1], is_lon => 1}); 
push(@location, "$c{$key}[0], $c{$key}[1]"); 
} 


my $path = $map->path(locations=>[ @location ], geodesic=>1); 
print $map->url; 
$map->image; 
$map->save("/home/data1/protected/map.png"); 
+0

Dovresti fornire del codice .. –

+0

@Mr. Rosario Maddox, possiamo ottenere la stessa cosa nella mappa di Openstreat? Qualche idea..? –

+1

Non lo so, ho bisogno di una soluzione di mappe openstreet me stesso. –