begin process at 2012 02 11 15:18:32
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Composants

 > SELECTION DANS UNE IMAGE PAR RECTANGLE OU ELLIPSE QUI PEUT SE SUBSTITUER AU CURSEUR POUR DESSINER...

SELECTION DANS UNE IMAGE PAR RECTANGLE OU ELLIPSE QUI PEUT SE SUBSTITUER AU CURSEUR POUR DESSINER...


 Information sur la source

Note :
9,67 / 10 - par 3 personnes
9,67 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Composants Classé sous :graphique, sélection, image Niveau :Initié Date de création :18/03/2006 Date de mise à jour :02/12/2009 18:23:24 Vu / téléchargé :4 294 / 873

Auteur : ThWilliam

Ecrire un message privé
Commentaire sur cette source (15)
Ajouter un commentaire et/ou une note

 Description

TSImage est un composant TImage doté d'un cadre de sélection de forme rectangulaire ou elliptique.
Après avoir été dessiné, ce cadre peut être redimensionné et/ou déplacé.
Il peut aussi suivre automatiquement la position de la souris : dans ce cas, il se substitue au curseur qui lui n'est plus visible (très pratique pour dessiner sur le Canvas de l'image).
Project1 donne un exemple de sélection permettant de peindre en bleu avec un certain pourcentage de transparence.
Merci d'avance pour vos remarques.  



 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

02 décembre 2009 18:23:26 :
Correction bug avec sélection elliptique

 Sources du même auteur

UN SELECTDIRECTORY QUI SE PLACE AU BON ENDROIT
Source avec Zip Source avec une capture COMPOSANT TZSIMAGE
Source avec Zip COMPOSANT TTHRESCOLLECTION
Source avec Zip Source avec une capture GRID AVEC PROPRIÉTÉS D'AFFICHAGE ET D'ÉDITION
Source avec Zip COMPOSANT LISTE DE STRINGS AVEC CHAMPS

 Sources de la même categorie

Source avec Zip MOVCONTROL par abmed1963
Source avec Zip Source avec une capture PACKAGE DE COMPOSANTS CINDY V4.41 par MAURICIO
Source avec Zip Source avec une capture DBNAVIGATORPLUS par pascal1541
Source avec Zip Source avec une capture EVALUATION D' EXPRESSIONS MATHÉMATIQUE (MÉTHODE RPN) par MAURICIO
Source avec Zip Source avec une capture COMPOSANT TQPROGRESSBAR UNE BARRE DE PROGRESSION... par yanb

 Sources en rapport avec celle ci

Source avec Zip Source avec une capture COMPOSANT TZSIMAGE par ThWilliam
Source avec Zip Source avec une capture UNITE GRAPHIQUE IMOD, AVEC EXEMPLE par Bacterius
Source avec Zip Source avec une capture BARRE DE SÉLECTION GRAPHIQUE par asciidefond
Source avec Zip Source avec une capture RECOUVRIR PROGRESSIVEMENT UNE IMAGE AVEC UNE AUTRE IMAGE par wolf691300
Source avec Zip Source avec une capture FONT MAKER-CREER DES FONTES GRAPHIQUES par flaith

Commentaires et avis

Commentaire de f0xi le 18/03/2006 18:38:56 administrateur CS

petite corrections a faire dans la declaration de la classe :

procedure Deselect devrait s'appelée Unselect

property SelectionType: TSImageSelectionType ...
property SelectionForm: TSImageSelectionForm ...
property CursorOnDrawSel: TCursor ...
property CursorOnMoveSel: TCursor ...
devraient etre en zone Public et non Published


function TSImage.XYInRect(X,Y,X1,Y1,X2,Y2: integer): boolean;
begin
  result := InRange(X,X1,X2) and InRange(Y,Y1,Y2);
end;



en tout cas, trés bon boulot, cela merite une trés bonne note.

Commentaire de f0xi le 19/03/2006 13:57:04 administrateur CS

oops j'ai dis une grosse betise plus haut, a propos de la zone public et published.

je suis tellement a l'ouest que j'ai oublier que dans ce cas, les prop ne seront plus visible dans l'inspecteur d'objet.

Commentaire de ThWilliam le 19/03/2006 18:32:58

Salut F0XI.
J'allais justement te répondre que je ne comprenais pas ta remarque sur les propriétés publiées.
Par contre, je vais faire les modif pour Deselect et XYInRect.
Merci pour ton commentaire. Sympa.

Commentaire de cincap le 22/03/2006 11:11:58

Bravo pour cette source,

Sur ma machine avec xp pack2, j'ai un scintillement qui pourrait être corrigé simplement en ajoutant dans le "oncreate" de la fiche, doublebuffered := true;

Ou rajouter un bouton avec le code suivant :

"doublebuffered:= not doublebuffered;"

Ce serait idéal de créer un cadre défini de la photo et surtout de pouvoir sauver cette nouvelle image en *.jpg ou *.bmp.

@+,

Cincap

Commentaire de ThWilliam le 22/03/2006 21:21:53

Salut CINCAP.

J'aimerais savoir quand tu as du scintillement : en traçant le rectangle de sélection ou en dessinant ?

"Créer un cadre défini" ? Tu veux parler de recadrer l'image ?
Fais-moi signe.

Grand merci pour ton commentaire.
A +

ThW  

Commentaire de f0xi le 27/03/2006 21:15:28 administrateur CS

petite reflexion au sujet de ton zip, enleve les fichiers : .DOF et .CFG
ils ne sont pas utiles.

Commentaire de dlewin le 07/03/2007 16:41:12

Bonjour,

Il n'est pas possible d'envoyer de message sur le site (un problème de serveur); est il possible
de me contacter à propos de TSimage, notamment pour quelques ajouts dans le cadre d'un application professionelle.

Merci

Commentaire de cirec le 05/05/2008 12:04:45 administrateur CS 10/10

Alors là moi je dis FORMIIIDABLE

j'ai justement besoin de faire une sélection d'une zone d'image et je suis tombé sur ce composant ... pile poile ci qu'il me faut ^^

Bravo ça fonctionne très bien (j'ai testé que la démo mais il n'y a pas de raison)
10/10

ps joli toutou tu lui feras une petite gratouille de ma part

Commentaire de ThWilliam le 05/05/2008 22:07:12

Merci à toi Cirec.

Ce à quoi tu dois faire gaffe, c'est de jouer au bon endroit avec "UnSelect", "HideSelection" ou "ShowSelection", pour éviter d'avoir à l'écran 2 rectangles ou...aucun. Pas toujours très simple le dessin en mode pmXor.

Thierry

PS : j'aimerais tant lui faire une petite gratouille de ta part. Hélas, grave maladie, puis...

Commentaire de cirec le 06/05/2008 14:52:35 administrateur CS

oui merci pour les conseils

par contre pour les besoins de ma source j'ai du modifier ceci :
function TSImage.SelectionAvailable: boolean;
begin
  Result:= SelectionExist;// and (SelectionState >= 9));
end;

ça m'empêchait de faire une copie directement ... il fallait d'abords bouger le rectangle de sélection sinon il ne se passait rien ;)


ps: pour la gratouille, désolé de t'avoir rappelé ça.
c'est ma plus grande crainte avec le mien ... c'est qu'on s'y attache ...

Commentaire de lassad2010 le 23/03/2010 09:29:24

Bonjour,

Je suis intéressé par votre composant; mais y a t il un moyen de rendre l'image proportionnel (Proportional=true) au lieu d'autosize, et d'ajouter un facteur  sur la dimension réel de l'image et la dimension d'affichage.

Commentaire de ThWilliam le 23/03/2010 10:01:27

Bonjour Lassad2010,

Regarde mon dernier composant ZSImage : il reprend les outils de sélection de SImage avec en plus d'autres outils (loupe, diaporama...). Il n'est plus basé sur un TImage, l'affichage est toujours proportionnel à l'image d'origine et le facteur d'agrandissement est réglable. Un fichier .rtf donne des explications sur l'utilisation.

http://www.delphifr.com/codes/COMPOSANT-TZSIMAGE_51360.aspx

A +
Thierry

Commentaire de lassad2010 le 23/03/2010 17:23:02

Bonjour Thierry

Merci pour votre aide et apropos du ZSImage le cadre du  selection peut sortir de l'image et moi j'ai vu dans SImage qu'il est toujours dans l'image et d'autre part SImage me convient mieux dans les testes que j'ai fait.
Y'a t'il un moyen de le modifier ?

Merci d'avance

Commentaire de ThWilliam le 23/03/2010 18:21:15

Re-bonjour Lassad2010,

Dans ZSImage, la sélection peut "sortir de l'image" (c'est la méthode utilisée par PhotoShop) , mais tu auras remarqué dans la démo qu'il est impossible, par exemple, de peindre en dehors de l'image (ce grâce à une fonction très simple: regarde la procédure de peinture en rouge ou celle du recadrage).  
Il y a toujours moyen de modifier le code de SImage, mais je délaisse ce composant au profit de ZSImage qui, en 1 ligne de code me change le facteur d'agrandissement. Donc on peut faire de la retouche par sélection magnétique en travaillant à 100 ou 200% d'affichage, puis revenir à la taille écran pour juger du résultat global.
Re-teste ce composant, il est très simple à utiliser et je ne vois pas pourquoi il te conviendrait moins bien.

Thierry

Commentaire de lassad2010 le 01/06/2010 10:36:17

Bonjour Thierry
Merci pour votre aide et j'ai testé votre composant  ZSImage et parfait son exécution, mais j'ai une petite demande y'at'i un moyen de rendre le cadre de sélection proportionnel lors de redimensionnement en rendant le rapport fixe entre Hauteur et largeur.

Merci d'avance.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

sélection dans une image Jpeg [ par dieuchrist ] Bijour,voilà mon tit problème:je dois faire un recadreur d'image(pouvoir sélectionner une partie de l'image) jpeg, tout en choisisant un rapport de fo Arrière-plan partout pareil [ par Also know as ] Bonjour,Voilà j'ai une image qui est en forme de carré de 55x55 pixels.J'aimerais pouvoir mettre cette image partout en background mais en essayant la Coller une image dans un objet tdbimage [ par famjerom ] J'ai créé une base de donnée SQL SERVER. Une table contient une image (type image ou varbinary) affichée à l'aide de l'objet VCL TDBImage de Delphi 20 faire tourner un composant image sur 360° [ par mighty_warrior ] Bonjours,Je suis débutant et je cherche à savoir comment entrainer un composant Timage en rotation sur 360° dont le centre de rotation peut être chois découper une image selon une figure prédéfinie [ par cantador ] bonjour à tous,Vous prenez un bitmap que vous affichez dans un TImage ou TPaintBox..Ensuite par programmation, par exemple, vous voulez découper propr Ereur de chargement image dans une création dynamique [ par Jean_Jean ] <img src="/imgs2/smile_q drag and drop d'une image d'une page web lancée depuis un webbroswer [ par chrisledeveloppeur ] Bonjour, comme le titre l'indique, je recherche une solution possible quand à un drag and drop d'une image contenue dans une page web  lancée dans un une image active [ par ouaich85 ] Bonjour,Je suis un débutant un delphi et je dois rendre un projhet pour la rentrée....Le problème est, mon projet consiste à rentre une image active,


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,855 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales