[C#.NET] Capture d'ecran d'une balise div

Capture d'ecran d'une balise div [C#.NET] - C#/.NET managed - Programmation

Marsh Posté le 05-07-2006 à 16:00:13    

Bonjour la communaute.
 
J'aimerai declancher une capture d'ecran lors d'un clic sur un bouton d'une page en c#.net. Par ailleurs, ca ouvrirait une nvite qui demande a l'utilisateur ou il veut enregistrer sa capture d'ecran. (Peu importe le format, jpg serait le plus style mais bmp ca irait aussi). Si possible, il faudrait contraindre la zone de capture a un div dont l'id est passe en parametre de la fonction de capture/enregistrement.
 
Dans le div en fait se trouve une animation flash, surlequel on peut dessiner des petits trucs. Voyez vous un moyen quelconque de faire ca?
 
Merci beaucoup  :hello:

Reply

Marsh Posté le 05-07-2006 à 16:00:13   

Reply

Marsh Posté le 12-07-2006 à 11:40:55    

J'ai l'impression que t'as pas bien compris ce que c'est qu'une appli web...
 
* Le C# il est exécuté sur le serveur. Il sert à générer une page (créer le HTML) qui va être envoyée au navigateur.
* Le Flash il est exécuté sur le poste client.
* Il n'existe pas d'ActiveX tout fait pour faire une capture d'écran et demander à l'utilisateur où la stocker.
 
Il reste 3 possibilités :
- [pas sûr] Chercher du côté de Javascript. J'y connais rien, ça existe peut-être mais pas sûr.
- [pas sûr] Chercher du côté d'ActionScript pour ajouter la fonctionnalité dans le code Flash, mais je ne suis pas sûr que tu ais le droit d'accéder au disque dur.
- [sûr] Développer toi-même l'ActiveX qui fait ce que tu veux et l'incorporer à ta page. Ca va te demander un peu de boulot. Et ça veux dire que les utilisateurs de ton site devront le télécherger avant de pouvoir utiliser la fonctionnalité.
 
J'insiste :
* C# en ASP.Net c'est fait pour du code SERVEUR, qui tourne sur le SERVEUR WEB où le site est installé. La preuve : les gens qui vont voir les sites en ASP.Net n'ont pas besoin d'avoir le framework d'installé.
* C# en WinForm c'est fait pour du code CLIENT sous windows, avec le framework installé.

Reply

Marsh Posté le 10-07-2008 à 14:14:57    

La soluce en WinForm est sur ce site  
J'ai essayé, ça marche nickel.

Reply

Marsh Posté le 10-07-2008 à 15:58:15    

ghik a écrit :

La soluce en WinForm est sur ce site  
J'ai essayé, ça marche nickel.


ben c'est un winform, pas un webform :o
 
après, il peut tenter d'adapter la chose en activex, mais jamais de la vie il va avoir une seule personne qui va accepter de le télécharger !
 
non, la solution est 100% flash : tu dois te démerder pour que ton flash envoie au serveur les informations du dessin. je ne connais pas flash, mais il y a forcément un moyen, que ce soit de la lecture pixel par pixel ou autre.
 
ensuite, le serveur transforme ça en une image, et au rechargement de la page, propose à l'utilisateur d'enregistrer l'image

Reply

Marsh Posté le 21-08-2008 à 11:11:35    

Hello  
Je crois que _Mose_ à parfaitement résumé les choses.
 

_Mose_ a écrit :


- [pas sûr] Chercher du côté de Javascript. J'y connais rien, ça existe peut-être mais pas sûr.


 
Effectivement c'est le même problème que pour le flash l'accès au disque local et au système (screen copy) est interdit hors du périmetre navigateur. Si ce n'était pas le cas imagine ce qu'un code malveillant pourrait faire !!!
 

_Mose_ a écrit :


- [pas sûr] Chercher du côté d'ActionScript pour ajouter la fonctionnalité dans le code Flash, mais je ne suis pas sûr que tu ais le droit d'accéder  


 
Même problèmatique.
 

_Mose_ a écrit :


- [sûr] Développer toi-même l'ActiveX qui fait ce que tu veux et l'incorporer à ta page. Ca va te demander un peu de boulot. Et ça veux dire que les utilisateurs de ton site devront le télécherger avant de pouvoir utiliser la fonctionnalité.


 
Et en plus il te te donne la (seule) solution.  
Tu peux aussi acheter cet active X => http://logiciel.codes-sources.com/ [...] X-510.aspx
 
Une petite remarque. Comme tu ne maitrise pas la configuration du client tu ne peux pas supposer que le .NET framework est installé (sauf à ne fonctionner que sur le PC ayant le framework).
Aussi il ne semble pas judicieux de développer l'Active X en .NET (quelque soit le language).
 
 
A+

Reply

Marsh Posté le 24-08-2008 à 18:48:37    

m3z > il n'est pas judicieux de ce tourner vers une solution ActiveX tout court. n'importe quelle personne faisant un minimum attention désactive les ActiveX dans Internet Explorer. C'est d'ailleurs la configuration par défaut des versions récentes d'IE, puisque même les ActiveX signés provenants de sites classés dans la zone "fiable" demandent confirmation pour s'exécuter. Bref, même si les gens veulent utiliser l'ActiveX il y a de grandes chances pour qu'il n'y arrivent même pas.
 
En effet, IE bloquera totalement tout ActiveX non signé. Quand on sait combien coûte la signature d'un ActiveX, et qu'il faut la refaire à chaque mise à jour, c'est clairement impossible.
 
Par contre, si un ActiveX doit être écrit, il vaut mieux au contraire se tourner vers la plateforme .NET, qui ouvre la possibilité d'être supportée sur autrechose que Windows (.NET tourne sur Mac et sous Linux). Dans tous les cas, aujourd'hui, un ActiveX, même signé, c'est perdre tous les utilisateurs de navigateurs alternatifs tels que Moz ou Opera. C'est donc une balle dans le pied quand on voit la tendance actuelle.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed