Во второй половине дня все,Рафаэль - найти ограничивающую поле текста ДО печати
Я пытаюсь нарисовать динамический «линейку», который может быть наведена (наряду с остальной частью страницы) и аннотированный, используя Рафаэль.
Я нашел путь РафаэляBBox() и isBBoxIntersect очень полезен для определения того, следует ли печатать градацию в определенную точку или если она будет слишком близка к другой и поэтому должна быть пропущена.
Теперь мне нужно аннотировать некоторые из градаций и хотеть следовать аналогичному методу - аннотировать самые большие градуировки, работая до наименьшего уровня детализации, но пропуская рисование текста, если он пересечет некоторые уже нарисованные.
К сожалению, мой взгляд на документы Рафаэля показал мне только методы Paper.print() и Paper.text(), которые добавляются в документ. Это означает, что я должен добавить, затем найти bbox и test, а затем удалить, если плохо, что потенциально довольно медленно.
Есть ли способ найти размеры какого-либо текста, который я хочу распечатать, без его печати, чтобы я мог вручную создать объект bbox и протестировать его против моих сохраненных bbox?
Как всегда, спасибо заблаговременно! :-)
Cheers, -Oli
Да, я нашел, что и играю с ним в момент ... проблема в том, что paper.text печатает его на бумаге, тогда как я хочу получить ограничительную рамку запланированного текста, прежде чем принимать решение о ее печати –
Agh ... Боюсь, что просто нет такого, пока вы не положите его на холст. Однако вы можете установить opacity = 0, пока не решите, показывать или нет. – peteorpeter
Хм, это ОЧЕНЬ интересная идея, Питер, это может просто выполнить эту работу. Хорошее мышление :-) –