La lecture de format de fichier PSD
Je me demande si c'est encore possible. J'ai une application qui ajoute un menu contextuel lorsque vous cliquez droit sur un fichier. Tout cela fonctionne bien, mais voici ce que j'aimerais faire:
Si le fichier est un fichier PSD puis je veux que le programme pour extraire l'image. Est-ce possible de le faire sans avoir Photoshop installé?
Fondamentalement, je veux que l'utilisateur de faire un clic droit et cliquez sur "image", ce qui permettrait d'économiser .jpg du fichier pour eux.
edit: ce sera à l'aide de c#
Grâce
- code.google.com/p/skimpt Si vous checkout/parcourir le code, regarde dans les Plateaux du dossier. Donc Plateaux > catégories > photoshop. Sa fait une couple d'années depuis que j'ai travaillé sur ce projet, vous allez avoir à aller à travers elle
- j'ai trouvé ça: "si (Système d'.IO.Chemin d'accès.GetExtension(nom de fichier) == ".psd") { Photoshop.PsdFile psd = new Photoshop.PsdFile(); psd.Charge(filename); //décoder l'image de l'Image myPsdImage = Photoshop.ImageDecoder.DecodeImage(psd); //créer une nouvelle image skImage de ski = new skImage(myPsdImage); Fréquent.ShowToastForm(ski); }
- Aussi: github.com/NtreevSoft/psd-parser
Vous devez vous connecter pour publier un commentaire.
Bien, il y a un PSD plugin pour Paint.NET je pense que c'est Open-Source qui vous voudrez peut-être jeter un oeil à pour commencer:
http://frankblumenberg.de/doku/doku.php?id=paintnet:psdplugin#download
La ImageMagick bibliothèques (qui fournissent les liaisons pour C#) également en charge le format de fichier PSD. Ils peuvent être facile à apprendre que d'entrer dans l'Paint.NET code et viennent également avec une très libre (BSD) de licence.
D'un exemple simple (qui se trouve à http://midimick.com/magicknet/magickDoc.html) à l'aide de MagickNet devrait ressembler à ceci:
Remarque: MagickNet a déménagé à http://www.codeproject.com/KB/dotnet/ImageMagick_in_VBNET.aspx
MagickNet.Image img = new MagickNet.Image("file.psd");
etimg.Resize(new System.Drawing.Size(100,100));
Ce mec ne c'est plus facile:
http://www.codeproject.com/KB/graphics/simplepsd.aspx
Avec un C# bibliothèque et un exemple de projet.
J'ai essayé avec PS2 fichiers et fonctionne bien.
J'ai écrit un PSD analyseur dont des extraits au format raster calques à partir de toutes les versions de la PSD et de PSB. http://www.telegraphics.com.au/svn/psdparse/trunk
Voici mon propre psd et l'analyseur de l'exportateur:
http://papirosnik.info/psdsplit/.
Il permet d'analyser correctement psd avec de couleur rvb 8, 16 et 32 bits par canal, processus utilisateur de masques, d'exporter les calques sélectionnés dans le jpeg, le png, jng, bmp, tiff; créer xml de mise en page à l'exportation, de calques et de groupes et de créer une texture atlas et des animations à définir à partir des couches.
Il est entièrement écrit en C#. Si vous voulez ses sources de m'en informer via ce lien sur les Propos de la boîte de dialogue de l'application.
FastStone n'cette jolie efficacement.
Ils n'ont pas de bibliothèques disponibles, mais je suppose que vous pouvez les contacter et voir si elles peuvent vous aider.
Consultez leur site web: http://www.faststone.org/download.htm
ImageMagick.NET - http://imagemagick.codeplex.com/ - est la version la plus récente du lien 0xA3 a donné, avec quelques syntaxe légèrement différente. (Remarque, c'est non testé):
J'ai eu l'extraction à partir des psd de travail. voir ma réponse ici
Comment faire pour extraire des couches à partir d'un fichier Photoshop? C#
peut aider quelqu'un d'autre.
Vous pouvez utiliser GroupDocs.Viewer pour .NET API pour rendre votre PSD fichiers en tant qu'images (JPG, PNG, BMP) dans votre application à l'aide de quelques lignes de code.
C#
Pour plus de détails et des exemples de code, veuillez visiter ici.
Divulgation: je travaille en tant que Développeur Évangéliste à GroupDocs.
J'ai eu beaucoup de succès avec Aspose d'Imagerie du composant qui peut charger et enregistrer des fichiers PSD sans Photoshop: https://products.aspose.com/imaging/net