Я использую Pango для размещения текста без бэкэнда cairo (в настоящее время тестирую с бэкэндом win32). И мне нравится знать, способен ли pango к разметке потока вокруг изображения или какого-либо конкретного контейнера. Или, может быть, внутри собственного контейнера.
Что-то вроде этого: Обтекание изображения
Я проверил много примеров и Pango API и не нашел такой возможности. Может быть, я что-то упустил или Панго не имеет этой функции.
Как я сказал в этот ответ, ты не можешь Я прошел через исходный код Pango обработка графики примитивна до точки бесполезности. Если в прошлом году не было каких-либо серьезных переделок, о которых не говорится в примечаниях к выпуску, то, вероятно, сейчас то же самое.
Изображение, которое вы предоставляете в качестве примера, в настоящее время доступно только в формате PDF, что требует жесткого позиционирования каждой строки, слова и глифа на странице. Хотя теоретически возможно проверить альфа-канал изображения, чтобы обернуть текст вокруг фактического изображения вместо содержащегося в нем блока, это (насколько мне известно) никогда не было реализовано в динамической системе вывода.
В частности, Pango не может даже открывать «дыры» в тексте для графики, которая будет добавлена позже, и на уровне кода даже не имеет понятия многострочной ячейки — следовательно, строка является размером ее самого большого компонента. ,
Лучше всего взглянуть на WebKit для более сложных дисплеев. Я, например, в значительной степени разочаровался в Панго, и, похоже, он становится все менее популярным.
Других решений пока нет …