문제

이것이 가능하는지 궁금합니다. 파일을 마우스 오른쪽 버튼으로 클릭 할 때 컨텍스트 메뉴를 추가하는 응용 프로그램이 있습니다. 모두 잘 작동하지만 여기에 내가하고 싶은 일이 있습니다.

파일이 PSD 인 경우 프로그램이 이미지를 추출하려고합니다. Photoshop을 설치하지 않고 할 수 있습니까?

기본적으로 사용자가 마우스 오른쪽 버튼을 클릭하고 "이미지"를 클릭하여 파일의 .jpg를 저장합니다.

편집 : C# 감사합니다

도움이 되었습니까?

해결책

글쎄, Paint.net 용 PSD 플러그인이있어 Open-Source라고 생각합니다.

http://frankblumenberg.de/doku/doku.php?id=paintnet:psdplugin#download

다른 팁

그만큼 Imagemagick 라이브러리 (제공하는 C#에 대한 바인딩) 또한 PSD 형식도 지원합니다. Paint.net 코드에 들어가는 것보다 시작하기가 더 쉬울 수 있으며 상당히 무료 (BSD와 같은) 라이센스가 제공됩니다.

간단한 샘플 (발견 된 http://midimick.com/magicknet/magickdoc.html) magicknet을 사용하면 다음과 같습니다.

using System;

static void Main(string[] args)
{
    MagickNet.Magick.Init();
    MagicNet.Image img = new MagicNet.Image("file.psd");
    img.Resize(System.Drawing.Size(100,100));
    img.Write("newFile.png");
    MagickNet.Magick.Term();
}

참고 : Magicknet이 이동했습니다 http://www.codeproject.com/kb/dotnet/imagemagick_in_vbnet.aspx

이 사람은 더 쉽게 수행합니다.

http://www.codeproject.com/kb/graphics/simplepsd.aspx

C# 라이브러리 및 샘플 프로젝트.

PS2 파일로 시도했고 작동합니다.

PSD 및 PSB의 모든 버전에서 래스터 형식 레이어를 추출하는 PSD 파서를 작성했습니다. http://www.telegraphics.com.au/svn/psdparse/trunk

다음은 내 자신의 PSD 파서 및 수출국입니다.http://papirosnik.info/psdsplit/. 채널, 프로세스 사용자 마스크, JPEG, PNG, JNG, BMP, TIFF로 선택한 레이어를 내보내는 RGB 색상 8, 16 및 32 비트로 PSD를 올바르게 구문 분석 할 수 있습니다. 내보낸 레이어 및 그룹의 XML 레이아웃을 만들고 주어진 레이어에서 텍스처 아틀라스 및 애니메이션을 만듭니다. 전적으로 C#로 작성되었습니다. 소스가 응용 프로그램의 대화 상자에 대한 지원 링크를 통해 나에게 알려 주시기 위해서.

Faststone은 이것을 매우 효율적으로 수행합니다. 그들은 라이브러리를 사용할 수 없지만, 연락하여 도움이 될 수 있는지 확인할 수 있다고 생각합니다.

웹 사이트를 확인하십시오. http://www.faststone.org/download.htm

imagemagick.net- http://imagemagick.codeplex.com/ - 링크 0xa3의 이후 버전은 약간 다른 구문으로 제공됩니다. (참고, 이것은 테스트되지 않았습니다) : :

using ImageMagickNET;

public void Test() {
        MagickNet.InitializeMagick();
        ImageMagickNET.Image img = new ImageMagickNET.Image("file.psd");
        img.Resize(new Geometry(100, 100, 0, 0, false, false);
        img.Write("newFile.png");
}

PSD 작업에서 추출했습니다. 여기에서 내 대답을 참조하십시오

Photoshop 파일에서 레이어를 추출하는 방법은 무엇입니까? 씨#

다른 사람을 도울 수 있습니다.

당신이 사용할 수있는 .NET 용 groupDocs.Viewer API는 몇 줄의 코드를 사용하여 응용 프로그램에서 PSD 파일을 이미지 (JPG, PNG, BMP)로 렌더링합니다.

씨#

ViewerConfig config = new ViewerConfig();
config.StoragePath = "D:\\storage\\";

// Create handler
ViewerImageHandler imageHandler = new ViewerImageHandler(config);

// Guid implies that unique document name 
string guid = "sample.psd";

// Get document pages as images
List<PageImage> pages = imageHandler.GetPages(guid);

foreach (PageImage page in pages)
{
    // Access each image using page.Stream
}

자세한 내용과 샘플 코드는 방문하십시오 여기. 공개 : 저는 GroupDocs의 개발자 전도자로 일하고 있습니다.

Photoshop없이 PSD 파일을로드하고 저장할 수있는 Aspose의 이미징 구성 요소로 큰 성공을 거두었습니다. https://products.aspose.com/imaging/net

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top