Class PngOptions
내용물
[
숨다
]PngOptions class
png 파일 형식 생성 옵션입니다.
public class PngOptions : ImageOptionsBase
생성자
이름 | 설명 |
---|---|
PngOptions() | 의 새 인스턴스를 초기화합니다.PngOptions 클래스. |
PngOptions(PngOptions) | 의 새 인스턴스를 초기화합니다.PngOptions 클래스. |
속성
이름 | 설명 |
---|---|
BitDepth { get; set; } | 비트 심도. |
BufferSizeHint { get; set; } | 모든 내부 버퍼에 대해 정의된 최대 허용 크기인 버퍼 크기 힌트를 가져오거나 설정합니다. |
ColorType { get; set; } | 색상 유형을 가져오거나 설정합니다. |
CompressionLevel { get; set; } | 0-9 범위의 png 이미지 압축 수준입니다. 여기서 9는 최대 압축이고 0은 저장 모드입니다. |
virtual DefaultReplacementFont { get; set; } | 기본 대체 글꼴(PSD 파일의 기존 레이어 글꼴이 시스템에 표시되지 않는 경우 래스터로 내보낼 때 텍스트를 그리는 데 사용되는 글꼴)을 가져오거나 설정합니다. 기본 글꼴의 적절한 이름을 사용하려면 다음 코드 스니펫을 사용할 수 있습니다. : System.Drawing.Text.InstalledFontCollection col = new System.Drawing.Text.InstalledFontCollection(); System.Drawing.FontFamily[] families = col.Families; string defaultFontName = families[0].Name; PsdLoadOptions psdLoadOptions = new PsdLoadOptions() { DefaultReplacementFont = defaultFontName }); |
Disposed { get; } | 이 인스턴스가 삭제되었는지 여부를 나타내는 값을 가져옵니다. |
FilterType { get; set; } | png 파일 저장 프로세스 중에 사용되는 필터 유형을 가져오거나 설정합니다. |
FullFrame { get; set; } | [전체 프레임]. 여부를 나타내는 값을 가져오거나 설정합니다. |
MultiPageOptions { get; set; } | 다중 페이지 options |
virtual Palette { get; set; } | 색상표를 가져오거나 설정합니다. |
ProgressEventHandler { get; set; } | 진행률 이벤트 처리기를 가져오거나 설정합니다. |
Progressive { get; set; } | 이 여부를 나타내는 값을 가져오거나 설정합니다.PngOptions 진보적입니다. |
virtual ResolutionSettings { get; set; } | 해상도 설정을 가져오거나 설정합니다. |
Source { get; set; } | 이미지를 생성할 소스를 가져오거나 설정합니다. |
VectorRasterizationOptions { get; set; } | 벡터 래스터화 옵션을 가져오거나 설정합니다. |
override XmpData { get; set; } | XMP 메타데이터 컨테이너를 가져오거나 설정합니다. |
행동 양식
이름 | 설명 |
---|---|
virtual Clone() | 이 인스턴스를 복제합니다. |
Dispose() | 현재 인스턴스를 삭제합니다. |
필드
이름 | 설명 |
---|---|
const DefaultCompressionLevel | 기본 압축 수준입니다. |
예
다음 예는 Aspose.PSD에서 AI 파일을 PSD 및 PNG 형식으로 내보낼 수 있는 방법을 보여줍니다.
[C#]
string sourceFileName = "form_8.ai";
string outputFileName = "form_8_export";
using (AiImage image = (AiImage)Image.Load(sourceFileName))
{
image.Save(outputFileName + ".psd", new PsdOptions());
image.Save(outputFileName + ".png", new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
}
이 예제는 내보내기 목적으로 SaveOptions Namespace의 다양한 클래스를 사용하는 방법을 보여줍니다. Psd 유형의 이미지는 Image 인스턴스에 로드된 다음 여러 형식으로 내보내집니다.
[C#]
//Image 클래스의 인스턴스에 기존 이미지 로드
using (Aspose.PSD.Image image = Aspose.PSD.Image.Load(@"C:\temp\image.psd"))
{
//기본 옵션을 사용하여 BMP 파일 형식으로 내보내기
image.Save(@"C:\temp\output.bmp", new Aspose.PSD.ImageOptions.BmpOptions());
//기본 옵션을 사용하여 JPEG 파일 형식으로 내보내기
image.Save(@"C:\temp\output.jpeg", new Aspose.PSD.ImageOptions.JpegOptions());
//기본 옵션을 사용하여 JPEG 2000 파일 형식으로 내보내기
image.Save(@"C:\temp\output.jp2", new Aspose.PSD.ImageOptions.Jpeg2000Options());
//기본 옵션을 사용하여 PNG 파일 형식으로 내보내기
image.Save(@"C:\temp\output.png", new Aspose.PSD.ImageOptions.PngOptions());
//기본 옵션을 사용하여 TIFF 파일 형식으로 내보내기
image.Save(@"c:\temp\output.tiff", new Aspose.PSD.ImageOptions.TiffOptions(Aspose.PSD.FileFormats.Tiff.Enums.TiffExpectedFormat.Default));
}
다음 예는 Aspose.PSD에서 PassThrough 레이어 혼합 모드를 사용하는 방법을 보여줍니다.
[C#]
string sourceFileName = "Apple.psd";
string outputFileName = "OutputApple";
using (PsdImage image = (PsdImage)Image.Load(sourceFileName))
{
if (image.Layers.Length < 23)
{
throw new Exception("There is not 23rd layer.");
}
var layer = image.Layers[23] as LayerGroup;
if (layer == null)
{
throw new Exception("The 23rd layer is not a layer group.");
}
if (layer.Name != "AdjustmentGroup")
{
throw new Exception("The 23rd layer name is not 'AdjustmentGroup'.");
}
if (layer.BlendModeKey != BlendMode.PassThrough)
{
throw new Exception("AdjustmentGroup layer should have 'pass through' blend mode.");
}
image.Save(outputFileName + ".psd", new PsdOptions(image));
image.Save(outputFileName + ".png", new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
layer.BlendModeKey = BlendMode.Normal;
image.Save(outputFileName + "Normal.psd", new PsdOptions(image));
image.Save(outputFileName + "Normal.png", new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
}
다음 예는 문서 변환 진행이 예외 없이 올바르게 작동함을 보여줍니다.
[C#]
string sourceFilePath = "Apple.psd";
Stream outputStream = new MemoryStream();
Aspose.PSD.ProgressEventHandler localProgressEventHandler = delegate(ProgressEventHandlerInfo progressInfo)
{
string message = string.Format(
"{0} {1}: {2} out of {3}",
progressInfo.Description,
progressInfo.EventType,
progressInfo.Value,
progressInfo.MaxValue);
Console.WriteLine(message);
};
Console.WriteLine("---------- Loading Apple.psd ----------");
var loadOptions = new PsdLoadOptions() { ProgressEventHandler = localProgressEventHandler };
using (PsdImage image = (PsdImage)Image.Load(sourceFilePath, loadOptions))
{
Console.WriteLine("---------- Saving Apple.psd to PNG format ----------");
image.Save(
outputStream,
new PngOptions()
{
ColorType = PngColorType.Truecolor,
ProgressEventHandler = localProgressEventHandler
});
Console.WriteLine("---------- Saving Apple.psd to PSD format ----------");
image.Save(
outputStream,
new PsdOptions()
{
ColorMode = ColorModes.Rgb,
ChannelsCount = 4,
ProgressEventHandler = localProgressEventHandler
});
}
이 예제에서는 Graphics 클래스를 사용하여 이미지 표면에 기본 모양을 만듭니다. 작업을 시연하기 위해 예제에서는 PSD 형식의 새 이미지를 만들고 Graphics 클래스에 의해 노출된 Draw 메서드를 사용하여 이미지 표면에 기본 모양을 그린 다음 PSD 파일 형식으로 내보냅니다.
[C#]
//이미지 인스턴스 생성
using (Aspose.PSD.Image image = new Aspose.PSD.FileFormats.Psd.PsdImage(500, 500))
{
// Graphics 클래스의 인스턴스 생성 및 초기화
Aspose.PSD.Graphics graphics = new Aspose.PSD.Graphics(image);
//그래픽 표면 지우기
graphics.Clear(Color.Wheat);
//검은 색의 Pen 객체를 지정하여 호를 그린다.
//호를 둘러싼 사각형, 시작 각도 및 스윕 각도
graphics.DrawArc(new Pen(Color.Black, 2), new Rectangle(200, 200, 100, 200), 0, 300);
//Blue 색상과 좌표 Point를 갖는 Pen 객체를 지정하여 Bezier를 그립니다.
graphics.DrawBezier(new Pen(Color.Blue, 2), new Point(250, 100), new Point(300, 30), new Point(450, 100), new Point(235, 25));
//Green 색상의 Pen 객체와 Points의 배열을 지정하여 Curve를 그립니다.
graphics.DrawCurve(new Pen(Color.Green, 2), new[] { new Point(100, 200), new Point(100, 350), new Point(200, 450) });
//Pen 객체와 주변 Rectangle을 사용하여 Ellipse를 그립니다.
graphics.DrawEllipse(new Pen(Color.Yellow, 2), new Rectangle(300, 300, 100, 100));
//선을 그리다
graphics.DrawLine(new Pen(Color.Violet, 2), new Point(100, 100), new Point(200, 200));
//파이 세그먼트 그리기
graphics.DrawPie(new Pen(Color.Silver, 2), new Rectangle(new Point(200, 20), new Size(200, 200)), 0, 45);
//빨간색의 Pen 객체와 Points의 배열을 지정하여 Polygon을 그립니다.
graphics.DrawPolygon(new Pen(Color.Red, 2), new[] { new Point(20, 100), new Point(20, 200), new Point(220, 20) });
//직사각형 그리기
graphics.DrawRectangle(new Pen(Color.Orange, 2), new Rectangle(new Point(250, 250), new Size(100, 100)));
//SolidBrush 개체를 만들고 다양한 속성을 설정합니다.
Aspose.PSD.Brushes.SolidBrush brush = new Aspose.PSD.Brushes.SolidBrush();
brush.Color = Color.Purple;
brush.Opacity = 100;
//SolidBrush 객체와 Font를 사용하여 특정 Point에 String을 그립니다.
graphics.DrawString("This image is created by Aspose.PSD API", new Font("Times New Roman", 16), brush, new PointF(50, 400));
//PngOptions의 인스턴스를 만들고 다양한 속성을 설정합니다.
Aspose.PSD.ImageOptions.PngOptions pngOptions = new Aspose.PSD.ImageOptions.PngOptions();
// 모든 변경 사항을 저장합니다.
image.Save("C:\\temp\\output.png", pngOptions);
}
또한보십시오
- class ImageOptionsBase
- 네임스페이스 Aspose.PSD.ImageOptions
- 집회 Aspose.PSD