当其中的内容超出其边距时,如何设置 HTML5 Canvas 自动调整大小?我正在开发一个家谱应用程序,当一代人的宽度超过 Canvas 的定义限制时,将节点连接在一起的线就会消失。
最佳答案
Canvas 没有自动功能。它是一个被动位图,您可以使用它来绘制图形,因此所有形式的逻辑都需要“手动”实现。
因此,为了让它变大,您必须跟踪正在绘制的所有内容的位置和大小,以便您可以计算当前图形的总边界框。
如果该边界框的位置 + 大小超过 Canvas 大小,则更新 Canvas 大小( Canvas 大小 = 边界框的位置 + 大小)。
但是,当调整 Canvas 大小时,所有当前内容和状态都将丢失,因此您将不得不重新渲染和重新初始化内容,就像第一次绘制它一样。这是您需要规划并纳入设计的内容。
关于javascript - HTML Canvas - 随着内容的增长自动调整大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37275610/