選択時に base64string に変換される geotiff ファイルがあります。エンコードされたファイルは ASP.NET Web サービスにアップロードされ、デコードされて .tiff 拡張子で保存されます。問題は、ファイル内のメタデータが元のファイルから大幅に変更されていることです。
JavaScript
var fr = new FileReader();
fr.onloadend = function () {
var base64string = fr.result;
var imgStr = base64string.split("base64,")[1];
App.instance.client.area.uploadMap(imgStr);
};
fr.readAsDataURL(value.rawFile);
C#/ASP.NET Web API:
byte[] imageBytes = Convert.FromBase64String(mapImage);
MemoryStream ms = new MemoryStream(imageBytes);
Image img = Image.FromStream(ms);
次に、メタデータをアップロードした画像を GDAL ライブラリで抽出しています。画像は問題ないように見えますが、ファイル内に含まれるメタデータはまったく異なります。角の座標は正確ではなくなり、元のファイルにはなかったカラー テーブル情報が新しいファイルに含まれています。
バイトが変更されないように、この変換を処理する方法はありますか?