- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在一个 Angular 应用程序中实现了 heremaps 并使用它来使用 wkhtmltopdf 打印 PDF,问题是我需要有一个可靠的事件来收听以便通知 wkhtmltopdf 我的 map 已完全加载并准备好打印.特别是在打印 PDF 时,某些图 block 未加载或仍处于模糊状态。
我尝试监听 mapviewchangeend
事件,但它不会在图 block 加载时抛出。我还尝试监听渲染引擎的 render
事件,但每次加载一个图 block 时都会抛出一个事件,我不知道我应该等待多少个图 block
// add a listener on the map ready event
this.map.getEngine().addEventListener("render", (event: H.util.Event) => {
if (this.map.getEngine() === event.target) {
map.mapReadyAction();
}
});
有没有一种可靠的方法可以知道我的 map 图 block 何时已完全加载并准备好打印?
编辑:使用评论中链接的帖子,我找到了一种可靠地计算已加载图 block 数量的方法。不幸的是,我找不到确定我的 map 需要加载的图 block 总数的方法(代码中的getTileNumber()
)
this.nbLoadedTiles = 0;
this.map
.getBaseLayer()
.getProvider()
.addEventListener("update", () => {
this.nbLoadedTiles++;
console.log(`tile loaded : ${this.nbLoadedTiles}`);
if (this.nbLoadedTiles === this.getTileNumber()) {
console.log("All tiles loaded");
map.mapReadyAction();
this.nbLoadedTiles = 0;
}
});
谢谢!
最佳答案
这不是可接受的答案,但这是我在等待合适的解决方案时使用的解决方法:
我正在使用原始帖子中描述的“图 block 加载”事件来启动计时器,如果在这段时间内没有加载其他图 block ,我认为 map 已加载。
// add a listener on the map ready event
this.map
.getBaseLayer()
.getProvider()
.addEventListener("update", () => {
// a new tile was succesfully loaded: reset the timer
clearTimeout(this.tileTimer);
this.tileTimer = setTimeout(() => {
map.mapReadyAction();
}, DELAY_TILE_LOADED);
});
我以 3 秒的延迟运行此程序,以便在获得满载 map 的最大机会和可接受的延迟之间取得可接受的折衷。请注意,我的用户不是客户,所以等待 3 秒是可以的,但对于在线应用程序来说,这可能是不行的
关于javascript - Heremaps 交互式 javascript API : maptile load event,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57269105/
我在使用 osmdroid 时遇到问题 当我使用这段代码时 map.setTileSource(TileSourceFactory.MAPQUESTOSM); 我使用在线 map 没问题。但这不允许我
这个问题不太可能帮助任何 future 的访问者;它只与一个小的地理区域、一个特定的时间点或一个非常狭窄的情况有关,这些情况并不普遍适用于互联网的全局受众。为了帮助使这个问题更广泛地适用,visit
我是 Android 的新手,但我想尝试制作一款基于图 block 的游戏,您可以在 map 上逐个方 block 地移动。 但是我在打开许多资源时遇到问题,现在我只是为每个图 block 使用相同的
有没有人知道是否可以使用 osmdroid 在 mapview 中将图像用作自定义 maptile?例如,我希望用户能够从我的应用程序中选择存储在手机上的图像,然后让该图像替换我的 map View
我目前正在做一个学校项目,我正在尝试学习将 OSM map 图 block 下载到手机的本地内存/缓存中的技术,以便用户能够在离线时查看 map 。 这是通过给出一个特定的位置来完成的,距离该位置特定
我在一个 Angular 应用程序中实现了 heremaps 并使用它来使用 wkhtmltopdf 打印 PDF,问题是我需要有一个可靠的事件来收听以便通知 wkhtmltopdf 我的 map 已
我是一名优秀的程序员,十分优秀!