Bonjour,
J'ai oublié de répondre. Mais pour la solution JS/CSS je pensais au CSS pour gérer la taille des cadres et éventuellement découper les mots, puis au JS pour vérifier via les propriétés CSS la taille qu'occupe réellement les chaînes de caractères pour les découper en sous-chaînes à placer dans les bons blocs.
Avec un schéma HTML :
1 bloc d'une ligne complète (supérieur)
1 bloc à gauche de l'image, 1 bloc au milieu avec l'image, 1 bloc à droite de l'image
1 bloc d'une ligne complète (inférieur)
---------------
C'est en écrivant n'importe quoi qu'on devient n'importe qui.