我正在制作一个应用程序,用户可以在其中上传可能非常大的 geotiffs。我想在客户端限制图像的宽度和高度。我知道可以使用 javascript 中的 Image() 对象从 jpg/png 获取宽度和高度。但这不适用于 geotiffs。
有没有办法在文件上传之前从 geotiff 中检索宽度和高度?
最佳答案
看看 browser image support table在维基百科上。如您所见,唯一支持 TIFF(因此可以将其加载到 HTMLImageElement 中)的主流浏览器是 Internet Explorer 和 Safari。如果那是您的目标市场,那么您应该没有问题。
如果您必须支持 Chrome 和 Firefox,您有几个选择:
正如 Pekka 所建议的那样,read the file contents并根据 TIFF 格式规范中的相应字段确定宽度和高度,或者
使用 Java 或 Flash 对象解码文件并在上传前提取信息。并非所有浏览器都安装了 Java 或 Flash,但很可能安装了。
关于javascript - HTML 文件 API - 上传前图像/tiff 的宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18305174/