var I: Integer; VEncoded: string; begin // prepare params VEncoded := 'LAYERS=osm_ram' + '&' + 'SERVICE=WMS' + '&' + 'VERSION=1.1.1' + '&' + 'REQUEST=GetMap' + '&' + 'STYLES=' + '&' + 'FORMAT=image%2Fpng' + '&' + 'SRS=EPSG%3A3395' + '&' + 'WIDTH=256' + '&' + 'HEIGHT=256' + '&' + 'BBOX=' + RoundEx(GetLMetr ,10) + ',' + RoundEx(GetBMetr, 10) + ',' + RoundEx(GetRMetr, 10) + ',' + RoundEx(GetTMetr, 10); // crypt for I := 1 to Length(VEncoded) do VEncoded[I] := Chr(Ord(VEncoded[I]) xor 42); // Base64 encode VEncoded := Base64Encode(VEncoded); //replase "+" with "%2b" charset VEncoded := RegExprReplaceMatchSubStr(VEncoded, '\+', '\%2b'); ResultURL:=GetURLBase + VEncoded + '&NAVKEY=NAVIONICS11WEBAPI111'; RequestHead := 'Referer: http://www.navionics.com/sites/navionics.plurimedia.it/files/coverage/webapp.html?2985400'; end.