2010-06-24 4 views
0

Je souhaite utiliser des fichiers image pour représenter une police personnalisée et copier la valeur du texte lorsqu'elle est sélectionnée et copiée. est-ce possible avec JavaScript?Valeur textuelle représentant des images en javascript

+0

Pouvez-vous poster un exemple? Ce n'est pas très clair ce que vous essayez de faire. – Oded

+0

Je ne l'ai pas encore écrit. vous pouvez le considérer comme un éditeur de texte riche, lorsque vous copiez et collez l'image que vous venez de copier dans un autre éditeur (par exemple, le bloc-notes), vous pouvez utiliser des valeurs de texte. – Yaso

+0

Voulez-vous dire que vous voulez utiliser des images qui représentent du texte, mais qui peuvent être sélectionnées et copiées comme du texte normal? Dans ce cas, j'utiliserais peut-être [@ font-face] (http://www.w3.org/TR/css3-fonts/#the-font-face-rule); voir aussi [Syntaxe Bulletproof @ font-face] (http://paulirish.com/2009/bulletproof-font-face-implementation-syntax/). –

Répondre

1

Je chercherais des alternatives. Il n'y a pas besoin d'images quand il peut être fait complètement cross-browser avec quelque chose comme Cufon ou sIFR si Flash est une option. Techniquement, ce serait possible avec JavaScript, mais ce serait plutôt fragile. Vous devriez trouver une police qui est "web-safe" (c'est-à-dire disponible sur ~ 100% des ordinateurs) qui évolue plus ou moins de la même manière que votre police personnalisée. Ensuite, vous devez superposer un élément SPAN sur l'image (en utilisant le positionnement absolu) avec ce texte, le rendre transparent et vous assurer qu'il est à une taille de police similaire à celle utilisée dans l'image.

C'est le moins qu'on puisse dire.

Bien sûr, si vous sélectionnez une image et copiez la sélection, le texte alt est copié, mais je ne vois pas cela très convivial. En outre, il peut être assez difficile de mettre en évidence juste une image sur une page.

+0

Je suis entièrement d'accord, mais vous pouvez également essayer de faire ce caractère par caractère, par ex. mettre chaque lettre dans un «span» dont la taille est déterminée par CSS. Mais ce sera un gâchis, de toute façon. –

Questions connexes