Hola randenf.
Google dice que:
Cita:
Ejemplos de formatos aceptados:
Grados, minutos y segundos (DMS): 41° 24' 12.1674", 2° 10' 26.508"
Grados y minutos decimales (DMM): 41 24.2028, 2 10.4418
Grados decimales (DDD): 41.40338, 2.17403
|
Fuente:
Coordenadas de latitud y longitud
Entonces, creo que basta con darle formato a las cadenas que te devuelve
CCR Exif para adecuarlas a un formato aceptado.
Código Delphi
[-]
uses ClipBrd;
function FormatGoogleCoord(const Sexa: string): string;
var
ts: TStrings;
pc: Char;
begin
ts:= TStringList.Create;
try
ts.CommaText:= Sexa;
pc:= UpCase(ts[2][Length(ts[2])]);
if pc = 'O' then pc:= 'W'; ts[2]:= Copy(ts[2], 1, Pos('/', ts[2]) - 1);
ts[2]:= FloatToStr(StrToFloat(ts[2]) / 100);
ts[2]:= StringReplace(ts[2], ',', '.', [rfReplaceAll]);
Result:= ts[0] + ' ' + ts[1] + ' ' + ts[2] + pc;
finally
ts.Free;
end;
end;
procedure TForm1.btnFormatClick(Sender: TObject);
var
Exif1, Exif2: string;
begin
Exif1:= '38,22,37/100S';
Exif2:= '60,16,31/100W';
Clipboard.AsText:= FormatGoogleCoord(Exif1)+','+FormatGoogleCoord(Exif2);
end;
Lo desconozco, pero suponiendo que
CCR Exif te devuelve siempre el formato que publicaste en tu mensaje ([grados],[minutos],[seg+cen/100][pto.Card]), tendría que servirte. Lo he probado con varias localizaciones conocidas y se posiciona correctamente.
Saludos