В зависимости от того, какие у вас временные ограничения, на самом деле не так уж сложно создать это самостоятельно, используя методы рисования в TCanvas. (или для любителей приключений, используя GDI / GDI + / Direct2D напрямую).
Преимущество этого состоит в том, что вы не зависите от стороннего компонента, можете заставить его делать именно то, что вам нужно, и не должны настраивать ваше приложение в соответствии с мышлением компонента. Кроме того, нет лицензий, поскольку вы написали это.
Недостатком, конечно, является то, что вам нужно все это самостоятельно.
Ключом к приложению для рисования, например, к чартеру потоков, является хранение данных. Каждая фигура должна быть экземпляром объекта, который имеет несколько методов, таких как draw (). Разные фигуры должны иметь разные классы-потомки, каждый со своим перегруженным методом draw () для рисования этой фигуры. Фигуры могут храниться в TList или аналогичном контейнере. Чтобы нарисовать документ, выполните итерацию списка объектов и вызовите его метод рисования.