nejeh.dellai
Messages postés12Date d'inscriptionmercredi 10 octobre 2018StatutMembreDernière intervention28 octobre 2018
-
Modifié le 12 oct. 2018 à 18:06
dellai.najeh -
12 oct. 2018 à 22:35
Bonjour,
j'ai un textarea dans lequel je saisi du texte dans une image, avec la fonction Imagestring(), mais avec du texte entre des balises du type ou , pour mettre sur l'image du texte en gras, souligné, en couleur ....
le problème est que le texte s'affiche avec les balises html.
je veux trouver un filtre qui enlève les balises en gardant le style du texte (couleur, format,..)
j'ai trouvé ce filtre
filter_var($string, FILTER_SANITIZE_STRING);
et j'ai l'essayé. il a bien enlevé les balises mais le texte n'est pas en sa bonne format ni style ...
j'ai trouvé aussi ce filtre
mais je n'ai pas compris comment l'utiliser ?
merci de me donner l'aide soit de la manière de l'utilisation de ce filtre ou s'il y a autre filtre qui répond à mon besoin et qui peut résoudre mon problème
merci pour votre compréhension !
jordane45
Messages postés38144Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention21 avril 2024344 12 oct. 2018 à 18:51
Bonjour,
Le souci ne se situe pas au niveau du "filtre".
Ce qui permet d'avoir du style sur du text... c'est justement les balises HTML.
Ton souci est donc de trouver comment écrire du text en gras, couleur... sur une image.
jordane45
Messages postés38144Date d'inscriptionmercredi 22 octobre 2003StatutModérateurDernière intervention21 avril 2024344 12 oct. 2018 à 18:54
j'ai bien compris ce que vous m'avez dit mais moi je veux utiliser les couleurs de manière dynamique c-à-d je veux changer les couleurs. je veux pas que la couleur soit définit et constante comme ce qui est utilisé par les fonctions de manipulation des images par le bibliothèque GD " imagestring ou imagettftext..."
j'ai utilisé une fonction javascript pour changer la couleur du texte mais j'ai eu toujours la couleur noir par défaut.
merci de m'orienter vers la bonne solution si vous permettez.
{% extends '::layoutv.html.twig' %}
{% block stylesheets %}
{% endblock %}
{% block titre %}
{% endblock %}
{% block body %}
{#{{ tinymce_init({'use_callback_tinymce_init': true, 'theme': {'simple': {'menubar': false}}}) }}#}
<div>
<h1>
Insertion des projets
</h1>
</div>
<!-- BEGIN DISPLAY THE FLASH MESSAGES -->
{% for flashMessage in app.session.flashbag.get('error') %}
<div class="alert alert-error">
<button class="close" data-dismiss="alert"></button>
<strong><i class='icon-remove'></i> </strong> {{ flashMessage }}
</div>
{% endfor %}
<!-- END DISPLAY THE FLASH MESSAGES -->
<div class="row-fluid">
<div class="span6">
<div class="portlet-body form">
<!-- BEGIN FORM-->
<form id="formProject" class="form-horizontal" action="{{ path('new_project') }}" enctype="multipart/form-data" method="post">
<div class="control-group">
<label class="control-label">Télécharger une image</label>
<div class="controls">
<input type="file" name="image">
<input name="positionx" id="positionx" value="">
<input name="positiony" id="positiony" value="">
<input id="colortext" value="" name="couleur" />
{#<input id="coltext" name="color" value="" onchange="changeBackground(this);" />#}
{#<label class="control-label">Texte</label>#}
</br>
{#<input type="hidden" class="tinymce" type="text" onClick="showWord()">#}
{#<textarea class="tinymce" name="caption"></textarea>#}
<div class="row">
<div class="col-sm-8" id="textarea">
{{ form_row(formProject.texte|raw) }}
</div>
</div>
</div>
</br>
</div>
<div class="controls margin-bottom-30">
<button type="submit" name="submit" class="btn green" id="btnSubmit">Valider</button>
<button type="reset" class="btn yellow">Annuler</button>
</div>
{{ form_rest(formProject) }}
</form>
<!-- END FORM-->
</div>
</div>
</div>
{% endblock %}
{% block javascripts %}
<script type="text/javascript"
src="{{ asset('bundles/formationminip/plugins/tinymce/tinymce.min.js') }}"></script>
<script type="text/javascript"
src="{{ asset('bundles/formationminip/plugins/jquery-ui/jquery-ui.min.js') }}"></script>
<script type="text/javascript" src="{{ asset('bundles/formationminip/js/text.js') }}"></script>
<script type="text/javascript">
$(document).ready(function () {
var colors = ['#3498db', '#e67e22', '#16a085', '#f39c12', '#2c3e50', '#7f8c8d', '#2980b9'];
var i = 0;
$('#textarea').click(function (e) {
// choix du couleur
var x = document.getElementById("formation_minipbundle_project_texte");
console.log(x);
x.style.color = colors[i++ % colors.length];
coltex = x.style.color;
console.log(coltex);
$("#colortext").val(coltex);
// position du curseur
var x = e.pageX;
var y = e.pageY;
//int of top position
//remember u need absolute position to calculate parents,grandparents to find true
// position from body tag to whereever textarea might be (html) wise
var tx = parseInt($(this).css('left'));
var ty = parseInt($(this).css('top'));
var fx = x - tx; //final x
var fy = y - ty; // final y
$("#positionx").val(fx);
$("#positiony").val(fy);
console.log(fx);
console.log(fy);
});
});
</script>
{% endblock %}
12 oct. 2018 à 18:54
http://php.net/manual/fr/function.imagettftext.php
Modifié le 12 oct. 2018 à 22:55
j'ai utilisé une fonction javascript pour changer la couleur du texte mais j'ai eu toujours la couleur noir par défaut.
merci de m'orienter vers la bonne solution si vous permettez.