Visiblement ce problème est un problème d'accès cross-domain (tu cherches à lire des données qui sont sur un autre site) et Firefox a du mal à savoir si c'est sur le même domaine lorsque l'url commence par file://
Dans Firefox il y a une config spéciale que tu peux changer.
Cependant en changeant cette config tu réduis le niveau de sécurité et donc ton navigateur peut potentiellement être exploité.
Le paramètre a changé est security.fileuri.strict_origin_policy qu'il faut mettre à false (doc à propos de ce paramètre). Pour changer un paramètre dans firefox tu tapes about:config dans l'url puis dans le filtre tu mets ce paramètre afin de trouver le paramètre en question dans la liste. Ensuite tu changes la valeur en double-cliquant sur la ligne (la ligne devrait passer en gras pour dire qu'elle n'a plus la valeur par défaut préconisé par Mozilla).
Ou alors au niveau du code, il ne faut pas utiliser la fonction getImageData. Mais dans ce cas cela signifie que tu ne peux plus récupérer le contenu des images. La meilleure solution serait alors de tracer un parcours idéal (en donnant les coordonnées du tracé, c'est plus chiant à faire, surtout si tu veux des lettres bien arrondies).
L'idée que j'avais, pour contourner le problème, ne marche pas
Par contre il me semble que Opera accepte ce fonctionnement (je ne sais pas si Chrome l'accepte ou non). Ce qui laisse plus à penser à un bug de Firefox pour les fichiers locaux.
Si tu tiens à ce que cette page soit accessible en local sur un ordinateur qui n'est le tient (ou pour des raisons de sécurité), donc que tu ne peux/veux pas changer ce paramètre. Alors il ne faut pas utiliser drawImage avant le getImageData.
Ainsi pour tracer ta lettre de référence il te reste la solution de dessiner cette lettre à l'aide des fonctions de dessin. https://developer.mozilla.org/fr/Tutor [...] %C3%A9triques (mais ça peut être un peu chiant à réaliser)
D'accord, sinon j'ai eu une idée plutôt intéressante et dont nous aurions beaucoup moins de problème... Mettre un mozTextStyle avec un style Cursive standard
Sa reviendrais exactement à la même police de caractère mais sans passer par des images donc plus optimal. j'ai mis ce code :
ctx.modele.translate(10, 152);
ctx.modele.mozTextStyle = "150pt cursives";
var text = "A";
var len = ctx.modele.mozMeasureText(text);
ctx.modele.mozDrawText(text);
// Dessin d'une courbe de Bézier sur le contexte du modèle
ctx.modele.stroke();
// Dessins dérivés du modèle
imgData = ctx.modele.getImageData(0,0,canvas.modele.width,canvas.modele.height);
drawBig(imgData,'modele','bigModele');
LCabaTab(tabModele,imgData);
drawLCaba(tabModele,'LCabaModele');
Le seule problème c'est que mozilla ne trouve pas la police Cursive standard ce qui est tout de même embêtant car il me faut absolument ce style de police car il convient très bien à l'éducation scolaire
Donc je sais pas si c'est possible d'insérer un .TTF dans mozTextStyle...
J'ai cherché mais je n'arrive toujours pas à trouver...
Je sais pas si c'est possible aussi maintenant de cacher les canvas à pars celui avec le cadre rouge , histoire que les utilisateurs ne voit que le canvas à dessiner (celui avec le cadre rouge) merci
D'accord, sinon j'ai eu une idée plutôt intéressante et dont nous aurions beaucoup moins de problème... Mettre un mozTextStyle avec un style Cursive standard
Sa reviendrais exactement à la même police de caractère mais sans passer par des images donc plus optimal. j'ai mis ce code :
ctx.modele.translate(10, 152);
ctx.modele.mozTextStyle = "150pt cursives";
var text = "A";
var len = ctx.modele.mozMeasureText(text);
ctx.modele.mozDrawText(text);
// Dessin d'une courbe de Bézier sur le contexte du modèle
ctx.modele.stroke();
// Dessins dérivés du modèle
imgData = ctx.modele.getImageData(0,0,canvas.modele.width,canvas.modele.height);
drawBig(imgData,'modele','bigModele');
LCabaTab(tabModele,imgData);
drawLCaba(tabModele,'LCabaModele');
Le seule problème c'est que mozilla ne trouve pas la police Cursive standard ce qui est tout de même embêtant car il me faut absolument ce style de police car il convient très bien à l'éducation scolaire
Donc je sais pas si c'est possible d'insérer un .TTF dans mozTextStyle...
J'ai cherché mais je n'arrive toujours pas à trouver...
Je sais pas si c'est possible aussi maintenant de cacher les canvas à pars celui avec le cadre rouge , histoire que les utilisateurs ne voit que le canvas à dessiner (celui avec le cadre rouge) merci
D'accord, sinon j'ai eu une idée plutôt intéressante et dont nous aurions beaucoup moins de problème... Mettre un mozTextStyle avec un style Cursive standard
Sa reviendrais exactement à la même police de caractère mais sans passer par des images donc plus optimal. j'ai mis ce code :
ctx.modele.translate(10, 152);
ctx.modele.mozTextStyle = "150pt cursives";
var text = "A";
var len = ctx.modele.mozMeasureText(text);
ctx.modele.mozDrawText(text);
// Dessin d'une courbe de Bézier sur le contexte du modèle
ctx.modele.stroke();
// Dessins dérivés du modèle
imgData = ctx.modele.getImageData(0,0,canvas.modele.width,canvas.modele.height);
drawBig(imgData,'modele','bigModele');
LCabaTab(tabModele,imgData);
drawLCaba(tabModele,'LCabaModele');
Le seule problème c'est que mozilla ne trouve pas la police Cursive standard ce qui est tout de même embêtant car il me faut absolument ce style de police car il convient très bien à l'éducation scolaire
Donc je sais pas si c'est possible d'insérer un .TTF dans mozTextStyle...
J'ai cherché mais je n'arrive toujours pas à trouver...
Je sais pas si c'est possible aussi maintenant de cacher les canvas à pars celui avec le cadre rouge , histoire que les utilisateurs ne voit que le canvas à dessiner (celui avec le cadre rouge) merci
Je ne pense pas que les polices TrueType (souvent propriétaires (si c'est pas toutes)) soient acceptées... Il faut soit trouver une famille existante se rapprochant de l'effet souhaitée (mais d'après tes recherches ça ne semble pas convenir) soit tu utilises la création de police HTML5 (mais là je ne sais pas encore comment ça fonctionne(ra), et surtout il me semble que ce n'est disponible qu'à partir de FF4)
Très bien, et peut on via un script pour installer une police sur Windows. Comme cela je mets ce script au début et sa demande à l'utilisateur si il veut installer une nouvelle police etc...
Je ne sais pas si c'est possible ?
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
L'important n'est pas de savoir maîtriser une technologie à la perfection, mais d'avoir une belle capacité d'adaptation.
L'important n'est pas de savoir maîtriser une technologie à la perfection, mais d'avoir une belle capacité d'adaptation.