На длину строки сильно влияет CSS, потому, чтобы рассчитать её виртуально, нужно как минимум знать окружение в которое она вставится. И даже если знать всё-равно это сложно и глупо. Мне видится самым простым обернуть строку в элемент с white-space: nowrap
и в момент рендера брать ширину этого элемента через offsetWidth и ставить её окну.