Class CmykColorHelper
Namespace: Aspose.Imaging
Assembly: Aspose.Imaging.dll (25.2.0)
Métodos auxiliares para trabajar con el color CMYK presentado como un valor entero con signo de 32 bits.
Proporciona una API similar a la estructura Aspose.Imaging.CmykColor.
Es más liviano porque el color CMYK se presenta solo como Int32 en lugar de una estructura con campos internos.
Por favor, prefiera usar los métodos estáticos de esta clase cuando sea posible en lugar de la estructura Aspose.Imaging.CmykColor obsoleta.
public static class CmykColorHelper
Herencia
Miembros heredados
object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()
Métodos
FromComponents(int, int, int, int)
Crea CMYK a partir de valores de cian, magenta, amarillo y negro de 32 bits.
public static int FromComponents(int cyan, int magenta, int yellow, int black)
Parámetros
cyan
int
El componente cian. Los valores válidos son de 0 a 255.
magenta
int
El componente magenta. Los valores válidos son de 0 a 255.
yellow
int
El componente amarillo. Los valores válidos son de 0 a 255.
black
int
El componente negro. Los valores válidos son de 0 a 255.
Devuelve
El color CMYK presentado como un valor entero de 32 bits.
Ejemplos
El siguiente ejemplo muestra cómo convertir colores CMYK a sus contrapartes RGB de manera rápida siguiendo fórmulas sencillas sin usar perfiles ICC.```csharp [C#]
int[] cmykColors = new int[]
{
Aspose.Imaging.CmykColorHelper.FromComponents(255, 0, 0, 0), // Cian
Aspose.Imaging.CmykColorHelper.FromComponents(0, 255, 0, 0), // Magenta
Aspose.Imaging.CmykColorHelper.FromComponents(0, 0, 255, 0), // Amarillo
Aspose.Imaging.CmykColorHelper.FromComponents(0, 0, 0, 255), // Negro
};
System.Console.WriteLine("Convertir CMYK a RGB sin usar perfiles ICC.");
foreach (int cmykColor in cmykColors)
{
Aspose.Imaging.Color rgbColor = Aspose.Imaging.CmykColorHelper.ToArgb(cmykColor);
int c = Aspose.Imaging.CmykColorHelper.GetC(cmykColor);
int m = Aspose.Imaging.CmykColorHelper.GetM(cmykColor);
int y = Aspose.Imaging.CmykColorHelper.GetY(cmykColor);
int k = Aspose.Imaging.CmykColorHelper.GetK(cmykColor);
System.Console.WriteLine("CMYK({0},{1},{2},{3})\t\t=> RGB({4},{5},{6})", c, m, y, k, rgbColor.R, rgbColor.G, rgbColor.B);
}
//La salida se verá así:
//Convertir CMYK a RGB sin usar perfiles ICC.
//CMYK(255,0,0,0) => RGB(0,255,255)
//CMYK(0,255,0,0) => RGB(255,0,255)
//CMYK(0,0,255,0) => RGB(255,255,0)
//CMYK(0,0,0,255) => RGB(0,0,0)
### <a id="Aspose_Imaging_CmykColorHelper_GetC_System_Int32_"></a> GetC\(int\)
Obtiene el valor del componente cian.
```csharp
public static int GetC(int cmyk)
Parámetros
cmyk
int
El color CMYK presentado como un valor entero de 32 bits.
Devuelve
El valor del componente cian.
Ejemplos
El siguiente ejemplo muestra cómo convertir colores RGB a sus contrapartes CMYK sin aplicar perfiles ICC.```csharp [C#]
Aspose.Imaging.Color[] rgbColors = new Aspose.Imaging.Color[]
{
Aspose.Imaging.Color.Red,
Aspose.Imaging.Color.Green,
Aspose.Imaging.Color.Blue,
};
System.Console.WriteLine("Convertir RGB a CMYK sin usar perfiles ICC.");
foreach (Aspose.Imaging.Color rgbColor in rgbColors)
{
int cmyk = Aspose.Imaging.CmykColorHelper.ToCmyk(rgbColor);
int c = Aspose.Imaging.CmykColorHelper.GetC(cmyk);
int m = Aspose.Imaging.CmykColorHelper.GetM(cmyk);
int y = Aspose.Imaging.CmykColorHelper.GetY(cmyk);
int k = Aspose.Imaging.CmykColorHelper.GetK(cmyk);
System.Console.WriteLine("RGB({0},{1},{2})\t\t=> CMYK({3},{4},{5},{6})", rgbColor.R, rgbColor.G, rgbColor.B, c, m, y, k);
}
//La salida se verá así:
//Convertir RGB a CMYK sin usar perfiles ICC.
//RGB(255,0,0) => CMYK(0,255,255,0)
//RGB(0,128,0) => CMYK(255,0,255,127)
//RGB(0,0,255) => CMYK(255,255,0,0)
El siguiente ejemplo muestra cómo convertir colores CMYK a sus contrapartes RGB de manera rápida siguiendo fórmulas sencillas sin usar perfiles ICC.```csharp
[C#]
int[] cmykColors = new int[]
{
Aspose.Imaging.CmykColorHelper.FromComponents(255, 0, 0, 0), // Cian
Aspose.Imaging.CmykColorHelper.FromComponents(0, 255, 0, 0), // Magenta
Aspose.Imaging.CmykColorHelper.FromComponents(0, 0, 255, 0), // Amarillo
Aspose.Imaging.CmykColorHelper.FromComponents(0, 0, 0, 255), // Negro
};
System.Console.WriteLine("Convertir CMYK a RGB sin usar perfiles ICC.");
foreach (int cmykColor in cmykColors)
{
Aspose.Imaging.Color rgbColor = Aspose.Imaging.CmykColorHelper.ToArgb(cmykColor);
int c = Aspose.Imaging.CmykColorHelper.GetC(cmykColor);
int m = Aspose.Imaging.CmykColorHelper.GetM(cmykColor);
int y = Aspose.Imaging.CmykColorHelper.GetY(cmykColor);
int k = Aspose.Imaging.CmykColorHelper.GetK(cmykColor);
System.Console.WriteLine("CMYK({0},{1},{2},{3})\t\t=> RGB({4},{5},{6})", c, m, y, k, rgbColor.R, rgbColor.G, rgbColor.B);
}
//La salida se verá así:
//Convertir CMYK a RGB sin usar perfiles ICC.
//CMYK(255,0,0,0) => RGB(0,255,255)
//CMYK(0,255,0,0) => RGB(255,0,255)
//CMYK(0,0,255,0) => RGB(255,255,0)
//CMYK(0,0,0,255) => RGB(0,0,0)
GetK(int)
Obtiene el valor del componente negro.
public static int GetK(int cmyk)
Parámetros
cmyk
int
El color CMYK presentado como un valor entero de 32 bits.
Devuelve
El valor del componente negro.
Ejemplos
El siguiente ejemplo muestra cómo convertir colores RGB a sus contrapartes CMYK sin aplicar perfiles ICC.```csharp [C#]
Aspose.Imaging.Color[] rgbColors = new Aspose.Imaging.Color[]
{
Aspose.Imaging.Color.Red,
Aspose.Imaging.Color.Green,
Aspose.Imaging.Color.Blue,
};
System.Console.WriteLine("Convertir RGB a CMYK sin usar perfiles ICC.");
foreach (Aspose.Imaging.Color rgbColor in rgbColors)
{
int cmyk = Aspose.Imaging.CmykColorHelper.ToCmyk(rgbColor);
int c = Aspose.Imaging.CmykColorHelper.GetC(cmyk);
int m = Aspose.Imaging.CmykColorHelper.GetM(cmyk);
int y = Aspose.Imaging.CmykColorHelper.GetY(cmyk);
int k = Aspose.Imaging.CmykColorHelper.GetK(cmyk);
System.Console.WriteLine("RGB({0},{1},{2})\t\t=> CMYK({3},{4},{5},{6})", rgbColor.R, rgbColor.G, rgbColor.B, c, m, y, k);
}
//La salida se verá así:
//Convertir RGB a CMYK sin usar perfiles ICC.
//RGB(255,0,0) => CMYK(0,255,255,0)
//RGB(0,128,0) => CMYK(255,0,255,127)
//RGB(0,0,255) => CMYK(255,255,0,0)
El siguiente ejemplo muestra cómo convertir colores CMYK a sus contrapartes RGB de manera rápida siguiendo fórmulas sencillas sin usar perfiles ICC.```csharp
[C#]
int[] cmykColors = new int[]
{
Aspose.Imaging.CmykColorHelper.FromComponents(255, 0, 0, 0), // Cian
Aspose.Imaging.CmykColorHelper.FromComponents(0, 255, 0, 0), // Magenta
Aspose.Imaging.CmykColorHelper.FromComponents(0, 0, 255, 0), // Amarillo
Aspose.Imaging.CmykColorHelper.FromComponents(0, 0, 0, 255), // Negro
};
System.Console.WriteLine("Convertir CMYK a RGB sin usar perfiles ICC.");
foreach (int cmykColor in cmykColors)
{
Aspose.Imaging.Color rgbColor = Aspose.Imaging.CmykColorHelper.ToArgb(cmykColor);
int c = Aspose.Imaging.CmykColorHelper.GetC(cmykColor);
int m = Aspose.Imaging.CmykColorHelper.GetM(cmykColor);
int y = Aspose.Imaging.CmykColorHelper.GetY(cmykColor);
int k = Aspose.Imaging.CmykColorHelper.GetK(cmykColor);
System.Console.WriteLine("CMYK({0},{1},{2},{3})\t\t=> RGB({4},{5},{6})", c, m, y, k, rgbColor.R, rgbColor.G, rgbColor.B);
}
//La salida se verá así:
//Convertir CMYK a RGB sin usar perfiles ICC.
//CMYK(255,0,0,0) => RGB(0,255,255)
//CMYK(0,255,0,0) => RGB(255,0,255)
//CMYK(0,0,255,0) => RGB(255,255,0)
//CMYK(0,0,0,255) => RGB(0,0,0)
GetM(int)
Obtiene el valor del componente magenta.
public static int GetM(int cmyk)
Parámetros
cmyk
int
El color CMYK presentado como un valor entero de 32 bits.
Devuelve
El valor del componente magenta.
Ejemplos
El siguiente ejemplo muestra cómo convertir colores RGB a sus contrapartes CMYK sin aplicar perfiles ICC.```csharp [C#]
Aspose.Imaging.Color[] rgbColors = new Aspose.Imaging.Color[]
{
Aspose.Imaging.Color.Red,
Aspose.Imaging.Color.Green,
Aspose.Imaging.Color.Blue,
};
System.Console.WriteLine("Convertir RGB a CMYK sin usar perfiles ICC.");
foreach (Aspose.Imaging.Color rgbColor in rgbColors)
{
int cmyk = Aspose.Imaging.CmykColorHelper.ToCmyk(rgbColor);
int c = Aspose.Imaging.CmykColorHelper.GetC(cmyk);
int m = Aspose.Imaging.CmykColorHelper.GetM(cmyk);
int y = Aspose.Imaging.CmykColorHelper.GetY(cmyk);
int k = Aspose.Imaging.CmykColorHelper.GetK(cmyk);
System.Console.WriteLine("RGB({0},{1},{2})\t\t=> CMYK({3},{4},{5},{6})", rgbColor.R, rgbColor.G, rgbColor.B, c, m, y, k);
}
//La salida se verá así:
//Convertir RGB a CMYK sin usar perfiles ICC.
//RGB(255,0,0) => CMYK(0,255,255,0)
//RGB(0,128,0) => CMYK(255,0,255,127)
//RGB(0,0,255) => CMYK(255,255,0,0)
El siguiente ejemplo muestra cómo convertir colores CMYK a sus contrapartes RGB de manera rápida siguiendo fórmulas sencillas sin usar perfiles ICC.```csharp
[C#]
int[] cmykColors = new int[]
{
Aspose.Imaging.CmykColorHelper.FromComponents(255, 0, 0, 0), // Cian
Aspose.Imaging.CmykColorHelper.FromComponents(0, 255, 0, 0), // Magenta
Aspose.Imaging.CmykColorHelper.FromComponents(0, 0, 255, 0), // Amarillo
Aspose.Imaging.CmykColorHelper.FromComponents(0, 0, 0, 255), // Negro
};
System.Console.WriteLine("Convertir CMYK a RGB sin usar perfiles ICC.");
foreach (int cmykColor in cmykColors)
{
Aspose.Imaging.Color rgbColor = Aspose.Imaging.CmykColorHelper.ToArgb(cmykColor);
int c = Aspose.Imaging.CmykColorHelper.GetC(cmykColor);
int m = Aspose.Imaging.CmykColorHelper.GetM(cmykColor);
int y = Aspose.Imaging.CmykColorHelper.GetY(cmykColor);
int k = Aspose.Imaging.CmykColorHelper.GetK(cmykColor);
System.Console.WriteLine("CMYK({0},{1},{2},{3})\t\t=> RGB({4},{5},{6})", c, m, y, k, rgbColor.R, rgbColor.G, rgbColor.B);
}
//La salida se verá así:
//Convertir CMYK a RGB sin usar perfiles ICC.
//CMYK(255,0,0,0) => RGB(0,255,255)
//CMYK(0,255,0,0) => RGB(255,0,255)
//CMYK(0,0,255,0) => RGB(255,255,0)
//CMYK(0,0,0,255) => RGB(0,0,0)
GetY(int)
Obtiene el valor del componente amarillo.
public static int GetY(int cmyk)
Parámetros
cmyk
int
El color CMYK presentado como un valor entero de 32 bits.
Devuelve
El valor del componente amarillo.
Ejemplos
El siguiente ejemplo muestra cómo convertir colores RGB a sus contrapartes CMYK sin aplicar perfiles ICC.```csharp [C#]
Aspose.Imaging.Color[] rgbColors = new Aspose.Imaging.Color[]
{
Aspose.Imaging.Color.Red,
Aspose.Imaging.Color.Green,
Aspose.Imaging.Color.Blue,
};
System.Console.WriteLine("Convertir RGB a CMYK sin usar perfiles ICC.");
foreach (Aspose.Imaging.Color rgbColor in rgbColors)
{
int cmyk = Aspose.Imaging.CmykColorHelper.ToCmyk(rgbColor);
int c = Aspose.Imaging.CmykColorHelper.GetC(cmyk);
int m = Aspose.Imaging.CmykColorHelper.GetM(cmyk);
int y = Aspose.Imaging.CmykColorHelper.GetY(cmyk);
int k = Aspose.Imaging.CmykColorHelper.GetK(cmyk);
System.Console.WriteLine("RGB({0},{1},{2})\t\t=> CMYK({3},{4},{5},{6})", rgbColor.R, rgbColor.G, rgbColor.B, c, m, y, k);
}
//La salida se verá así:
//Convertir RGB a CMYK sin usar perfiles ICC.
//RGB(255,0,0) => CMYK(0,255,255,0)
//RGB(0,128,0) => CMYK(255,0,255,127)
//RGB(0,0,255) => CMYK(255,255,0,0)
El siguiente ejemplo muestra cómo convertir colores CMYK a sus contrapartes RGB de manera rápida siguiendo fórmulas sencillas sin usar perfiles ICC.```csharp
[C#]
int[] cmykColors = new int[]
{
Aspose.Imaging.CmykColorHelper.FromComponents(255, 0, 0, 0), // Cian
Aspose.Imaging.CmykColorHelper.FromComponents(0, 255, 0, 0), // Magenta
Aspose.Imaging.CmykColorHelper.FromComponents(0, 0, 255, 0), // Amarillo
Aspose.Imaging.CmykColorHelper.FromComponents(0, 0, 0, 255), // Negro
};
System.Console.WriteLine("Convertir CMYK a RGB sin usar perfiles ICC.");
foreach (int cmykColor in cmykColors)
{
Aspose.Imaging.Color rgbColor = Aspose.Imaging.CmykColorHelper.ToArgb(cmykColor);
int c = Aspose.Imaging.CmykColorHelper.GetC(cmykColor);
int m = Aspose.Imaging.CmykColorHelper.GetM(cmykColor);
int y = Aspose.Imaging.CmykColorHelper.GetY(cmykColor);
int k = Aspose.Imaging.CmykColorHelper.GetK(cmykColor);
System.Console.WriteLine("CMYK({0},{1},{2},{3})\t\t=> RGB({4},{5},{6})", c, m, y, k, rgbColor.R, rgbColor.G, rgbColor.B);
}
//La salida se verá así:
//Convertir CMYK a RGB sin usar perfiles ICC.
//CMYK(255,0,0,0) => RGB(0,255,255)
//CMYK(0,255,0,0) => RGB(255,0,255)
//CMYK(0,0,255,0) => RGB(255,255,0)
//CMYK(0,0,0,255) => RGB(0,0,0)
ToArgb(int[])
La conversión de colores CMYK a colores ARGB.
public static Color[] ToArgb(int[] cmykPixels)
Parámetros
cmykPixels
int[]
Los colores CMYK presentados como valores enteros de 32 bits.
Devuelve
Color[]
Los colores ARGB.
ToArgb(int)
La conversión de color CMYK a color ARGB.
public static Color ToArgb(int cmykPixel)
Parámetros
cmykPixel
int
El color CMYK presentado como un valor entero de 32 bits.
Devuelve
El color ARGB.
Ejemplos
El siguiente ejemplo muestra cómo convertir colores CMYK a sus RGB contrapartes de manera rápida siguiendo fórmulas sencillas sin usar perfiles ICC.```csharp [C#]
int[] cmykColors = new int[]
{
Aspose.Imaging.CmykColorHelper.FromComponents(255, 0, 0, 0), // Cian
Aspose.Imaging.CmykColorHelper.FromComponents(0, 255, 0, 0), // Magenta
Aspose.Imaging.CmykColorHelper.FromComponents(0, 0, 255, 0), // Amarillo
Aspose.Imaging.CmykColorHelper.FromComponents(0, 0, 0, 255), // Negro
};
System.Console.WriteLine("Convertir CMYK a RGB sin usar perfiles ICC.");
foreach (int cmykColor in cmykColors)
{
Aspose.Imaging.Color rgbColor = Aspose.Imaging.CmykColorHelper.ToArgb(cmykColor);
int c = Aspose.Imaging.CmykColorHelper.GetC(cmykColor);
int m = Aspose.Imaging.CmykColorHelper.GetM(cmykColor);
int y = Aspose.Imaging.CmykColorHelper.GetY(cmykColor);
int k = Aspose.Imaging.CmykColorHelper.GetK(cmykColor);
System.Console.WriteLine("CMYK({0},{1},{2},{3})\t\t=> RGB({4},{5},{6})", c, m, y, k, rgbColor.R, rgbColor.G, rgbColor.B);
}
//La salida se verá así:
//Convertir CMYK a RGB sin usar perfiles ICC.
//CMYK(255,0,0,0) => RGB(0,255,255)
//CMYK(0,255,0,0) => RGB(255,0,255)
//CMYK(0,0,255,0) => RGB(255,255,0)
//CMYK(0,0,0,255) => RGB(0,0,0)
### <a id="Aspose_Imaging_CmykColorHelper_ToArgb32_System_Int32___"></a> ToArgb32\(int\[\]\)
La conversión de colores CMYK a colores ARGB.
```csharp
public static int[] ToArgb32(int[] cmykPixels)
Parámetros
cmykPixels
int[]
Los colores CMYK presentados como valores enteros de 32 bits.
Devuelve
int[]
Los colores ARGB presentados como valores enteros de 32 bits.
ToArgbIcc(int[])
La conversión de colores CMYK a colores ARGB utilizando conversión Icc con perfiles predeterminados.
public static Color[] ToArgbIcc(int[] cmykPixels)
Parámetros
cmykPixels
int[]
Los píxeles CMYK presentados como valores enteros de 32 bits.
Devuelve
Color[]
Los colores ARGB.
ToArgbIcc(int, Stream, Stream)
La conversión de colores CMYK a colores ARGB utilizando conversión Icc con perfiles personalizados.
public static Color ToArgbIcc(int cmykPixel, Stream cmykIccStream, Stream rgbIccStream)
Parámetros
cmykPixel
int
El color CMYK presentado como un valor entero de 32 bits.
cmykIccStream
Stream
El flujo que contiene el perfil Icc CMYK.
rgbIccStream
Stream
El flujo que contiene el perfil Icc RGB.
Devuelve
El color ARGB.
Ejemplos
El siguiente ejemplo muestra cómo convertir colores CMYK a sus RGB contrapartes usando perfiles ICC.```csharp [C#]
int[] cmykColors = new int[]
{
Aspose.Imaging.CmykColorHelper.FromComponents(255, 0, 0, 0), // Cian
Aspose.Imaging.CmykColorHelper.FromComponents(0, 255, 0, 0), // Magenta
Aspose.Imaging.CmykColorHelper.FromComponents(0, 0, 255, 0), // Amarillo
Aspose.Imaging.CmykColorHelper.FromComponents(0, 0, 0, 255), // Negro
};
System.Console.WriteLine("Convertir CMYK a RGB usando perfiles ICC predeterminados.");
foreach (int cmykColor in cmykColors)
{
Aspose.Imaging.Color rgbColor = Aspose.Imaging.CmykColorHelper.ToArgbIcc(cmykColor);
int c = Aspose.Imaging.CmykColorHelper.GetC(cmykColor);
int m = Aspose.Imaging.CmykColorHelper.GetM(cmykColor);
int y = Aspose.Imaging.CmykColorHelper.GetY(cmykColor);
int k = Aspose.Imaging.CmykColorHelper.GetK(cmykColor);
System.Console.WriteLine("CMYK({0},{1},{2},{3})\t\t=> RGB({4},{5},{6})", c, m, y, k, rgbColor.R, rgbColor.G, rgbColor.B);
}
// Especifique su ruta a los perfiles ICC RGB y CMYK personalizados.
string dir = "c:\\temp\\iccprofiles\\";
System.Console.WriteLine("Convertir CMYK a RGB usando perfiles ICC personalizados.");
using (System.IO.Stream rgbProfileStream = System.IO.File.OpenRead(dir + "eciRGB_v2.icc"))
using (System.IO.Stream cmykProfileStream = System.IO.File.OpenRead(dir + "ISOcoated_v2_FullGamut4.icc"))
{
foreach (int cmykColor in cmykColors)
{
Aspose.Imaging.Color rgbColor = Aspose.Imaging.CmykColorHelper.ToArgbIcc(cmykColor);
int c = Aspose.Imaging.CmykColorHelper.GetC(cmykColor);
int m = Aspose.Imaging.CmykColorHelper.GetM(cmykColor);
int y = Aspose.Imaging.CmykColorHelper.GetY(cmykColor);
int k = Aspose.Imaging.CmykColorHelper.GetK(cmykColor);
System.Console.WriteLine("CMYK({0},{1},{2},{3})\t\t=> RGB({4},{5},{6})", c, m, y, k, rgbColor.R, rgbColor.G, rgbColor.B);
}
}
//La salida se verá así:
//Convertir CMYK a RGB usando perfiles ICC predeterminados.
//CMYK(255,0,0,0) => RGB(46,188,220)
//CMYK(0,255,0,0) => RGB(231,52,142)
//CMYK(0,0,255,0) => RGB(244,253,63)
//CMYK(0,0,0,255) => RGB(21,21,21)
//Convertir CMYK a RGB usando perfiles ICC personalizados.
//CMYK(255,0,0,0) => RGB(46,188,220)
//CMYK(0,255,0,0) => RGB(231,52,142)
//CMYK(0,0,255,0) => RGB(244,253,63)
//CMYK(0,0,0,255) => RGB(21,21,21)
### <a id="Aspose_Imaging_CmykColorHelper_ToCmyk_System_Int32___"></a> ToCmyk\(int\[\]\)
La conversión de colores ARGB a colores CMYK.
```csharp
public static int[] ToCmyk(int[] argbPixels)
Parámetros
argbPixels
int[]
Los colores ARGB presentados como valores enteros de 32 bits.
Devuelve
int[]
Los colores CMYK presentados como valores enteros de 32 bits.
ToCmyk(int)
La conversión de color ARGB a color CMYK.
public static int ToCmyk(int argbPixel)
Parámetros
argbPixel
int
El color ARGB presentado como un valor entero de 32 bits.
Devuelve
El color CMYK presentado como un valor entero de 32 bits.
ToCmyk(Color)
La conversión de color ARGB a color CMYK.
public static int ToCmyk(Color pixel)
Parámetros
pixel
Color
El color ARGB.
Devuelve
El color CMYK presentado como un valor entero de 32 bits.
Ejemplos
El siguiente ejemplo llena el área central de una imagen rasterizada con píxeles negros utilizando el método Aspose.Imaging.RasterImage.SaveCmyk32Pixels.```csharp [C#]
string dir = @"c:\temp\";
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.png"))
{
Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;
// Obtener una representación entera del negro en el espacio de color CMYK.
int blackCmyk = Aspose.Imaging.CmykColorHelper.ToCmyk(Color.Black);
// El cuadrado negro.
int[] pixels = new int[(rasterImage.Width / 2) * (rasterImage.Height / 2)];
for (int i = 0; i < pixels.Length; i++)
{
pixels[i] = blackCmyk;
}
// Dibujar el cuadrado negro en el centro de la imagen.
Aspose.Imaging.Rectangle area = new Aspose.Imaging.Rectangle(rasterImage.Width / 4, rasterImage.Height / 4, rasterImage.Width / 2, rasterImage.Height / 2);
rasterImage.SaveCmyk32Pixels(area, pixels);
rasterImage.Save(dir + "sample.SaveCmyk32Pixels.png");
}
El siguiente ejemplo muestra cómo convertir colores RGB a sus contrapartes CMYK sin aplicar perfiles ICC.```csharp
[C#]
Aspose.Imaging.Color[] rgbColors = new Aspose.Imaging.Color[]
{
Aspose.Imaging.Color.Red,
Aspose.Imaging.Color.Green,
Aspose.Imaging.Color.Blue,
};
System.Console.WriteLine("Convertir RGB a CMYK sin usar perfiles ICC.");
foreach (Aspose.Imaging.Color rgbColor in rgbColors)
{
int cmyk = Aspose.Imaging.CmykColorHelper.ToCmyk(rgbColor);
int c = Aspose.Imaging.CmykColorHelper.GetC(cmyk);
int m = Aspose.Imaging.CmykColorHelper.GetM(cmyk);
int y = Aspose.Imaging.CmykColorHelper.GetY(cmyk);
int k = Aspose.Imaging.CmykColorHelper.GetK(cmyk);
System.Console.WriteLine("RGB({0},{1},{2})\t\t=> CMYK({3},{4},{5},{6})", rgbColor.R, rgbColor.G, rgbColor.B, c, m, y, k);
}
//La salida se verá así:
//Convertir RGB a CMYK sin usar perfiles ICC.
//RGB(255,0,0) => CMYK(0,255,255,0)
//RGB(0,128,0) => CMYK(255,0,255,127)
//RGB(0,0,255) => CMYK(255,255,0,0)
ToCmyk(Color[])
La conversión de colores ARGB a colores CMYK.
public static int[] ToCmyk(Color[] pixels)
Parámetros
pixels
Color[]
Los colores ARGB.
Devuelve
int[]
Los colores CMYK presentados como valores enteros de 32 bits.
ToCmykBytes(int[], int, int)
Convierte ARGB a CMYK.
public static byte[] ToCmykBytes(int[] argbPixels, int startIndex, int length)
Parámetros
argbPixels
int[]
Los colores RGB presentados como valores enteros de 32 bits.
startIndex
int
El índice de inicio del color RGB.
length
int
El número de píxeles RGB a convertir.
Devuelve
byte[]
Los colores CMYK presentados como un arreglo de bytes.
ToCmykIcc(Color[], Stream, Stream)
La conversión de colores ARGB a colores CMYK utilizando conversión Icc con perfiles personalizados.
public static int[] ToCmykIcc(Color[] pixels, Stream rgbIccStream, Stream cmykIccStream)
Parámetros
pixels
Color[]
Los colores ARGB.
rgbIccStream
Stream
El flujo que contiene el perfil Icc RGB.
cmykIccStream
Stream
El flujo que contiene el perfil Icc CMYK.
Devuelve
int[]
Los colores CMYK presentados como valores enteros de 32 bits.
ToCmykIcc(int[], Stream, Stream)
La conversión de colores ARGB a colores CMYK utilizando conversión Icc con perfiles personalizados.
public static int[] ToCmykIcc(int[] pixels, Stream rgbIccStream, Stream cmykIccStream)
Parámetros
pixels
int[]
Los colores ARGB.
rgbIccStream
Stream
El flujo que contiene el perfil Icc RGB.
cmykIccStream
Stream
El flujo que contiene el perfil Icc CMYK.
Devuelve
int[]
Los colores CMYK presentados como valores enteros de 32 bits.
ToCmykIcc(Color[])
La conversión de colores ARGB a colores CMYK utilizando conversión Icc con perfiles predeterminados.
public static int[] ToCmykIcc(Color[] pixels)
Parámetros
pixels
Color[]
Los colores ARGB.
Devuelve
int[]
Los colores CMYK presentados como valores enteros de 32 bits.
ToCmykIcc(int[])
La conversión de colores ARGB a colores CMYK utilizando conversión Icc con perfiles predeterminados.
public static int[] ToCmykIcc(int[] pixels)
Parámetros
pixels
int[]
Los colores ARGB.
Devuelve
int[]
Los colores CMYK presentados como valores enteros de 32 bits.
ToCmykIcc(Color)
La conversión de color ARGB a color CMYK utilizando conversión Icc con perfiles predeterminados.
public static int ToCmykIcc(Color pixel)
Parámetros
pixel
Color
El color ARGB.
Devuelve
El color CMYK presentado como un valor entero de 32 bits.
Ejemplos
El siguiente ejemplo muestra cómo convertir colores RGB a sus contrapartes CMYK utilizando perfiles ICC.```csharp [C#]
Aspose.Imaging.Color[] rgbColors = new Aspose.Imaging.Color[]
{
Aspose.Imaging.Color.Red,
Aspose.Imaging.Color.Green,
Aspose.Imaging.Color.Blue,
};
System.Console.WriteLine("Convertir RGB a CMYK usando perfiles ICC predeterminados.");
foreach (Aspose.Imaging.Color rgbColor in rgbColors)
{
int cmyk = Aspose.Imaging.CmykColorHelper.ToCmykIcc(rgbColor);
int c = Aspose.Imaging.CmykColorHelper.GetC(cmyk);
int m = Aspose.Imaging.CmykColorHelper.GetM(cmyk);
int y = Aspose.Imaging.CmykColorHelper.GetY(cmyk);
int k = Aspose.Imaging.CmykColorHelper.GetK(cmyk);
System.Console.WriteLine("RGB({0},{1},{2})\t\t=> CMYK({3},{4},{5},{6})", rgbColor.R, rgbColor.G, rgbColor.B, c, m, y, k);
}
// Especifique su ruta a los perfiles ICC RGB y CMYK.
string dir = "c:\\temp\\iccprofiles\\";
System.Console.WriteLine("Convertir RGB a CMYK usando perfiles ICC personalizados.");
using (System.IO.Stream rgbProfileStream = System.IO.File.OpenRead(dir + "eciRGB_v2.icc"))
using (System.IO.Stream cmykProfileStream = System.IO.File.OpenRead(dir + "ISOcoated_v2_FullGamut4.icc"))
{
foreach (Aspose.Imaging.Color rgbColor in rgbColors)
{
int cmyk = Aspose.Imaging.CmykColorHelper.ToCmykIcc(rgbColor, rgbProfileStream, cmykProfileStream);
int c = Aspose.Imaging.CmykColorHelper.GetC(cmyk);
int m = Aspose.Imaging.CmykColorHelper.GetM(cmyk);
int y = Aspose.Imaging.CmykColorHelper.GetY(cmyk);
int k = Aspose.Imaging.CmykColorHelper.GetK(cmyk);
System.Console.WriteLine("RGB({0},{1},{2})\t\t=> CMYK({3},{4},{5},{6})", rgbColor.R, rgbColor.G, rgbColor.B, c, m, y, k);
}
}
//La salida se verá así:
//Convertir RGB a CMYK usando perfiles ICC predeterminados.
//RGB(255,0,0) => CMYK(0,254,249,15)
//RGB(0,128,0) => CMYK(247,21,254,85)
//RGB(0,0,255) => CMYK(254,195,0,134)
//Convertir RGB a CMYK usando perfiles ICC personalizados.
//RGB(255,0,0) => CMYK(0,207,219,0)
//RGB(0,128,0) => CMYK(238,16,254,80)
//RGB(0,0,255) => CMYK(242,182,0,0)
### <a id="Aspose_Imaging_CmykColorHelper_ToCmykIcc_System_Int32_"></a> ToCmykIcc\(int\)
La conversión de color ARGB a color CMYK utilizando conversión Icc con perfiles predeterminados.
```csharp
public static int ToCmykIcc(int argb)
Parámetros
argb
int
El color ARGB.
Devuelve
El color CMYK presentado como un valor entero de 32 bits.
ToCmykIcc(Color, Stream, Stream)
La conversión de color ARGB a color CMYK utilizando conversión Icc con perfiles personalizados.
public static int ToCmykIcc(Color pixel, Stream rgbIccStream, Stream cmykIccStream)
Parámetros
pixel
Color
El color ARGB.
rgbIccStream
Stream
El flujo que contiene el perfil Icc RGB.
cmykIccStream
Stream
El flujo que contiene el perfil Icc CMYK.
Devuelve
El color CMYK presentado como un valor entero de 32 bits.
Ejemplos
El siguiente ejemplo muestra cómo convertir colores RGB a sus contrapartes CMYK utilizando perfiles ICC.```csharp [C#]
Aspose.Imaging.Color[] rgbColors = new Aspose.Imaging.Color[]
{
Aspose.Imaging.Color.Red,
Aspose.Imaging.Color.Green,
Aspose.Imaging.Color.Blue,
};
System.Console.WriteLine("Convertir RGB a CMYK usando perfiles ICC predeterminados.");
foreach (Aspose.Imaging.Color rgbColor in rgbColors)
{
int cmyk = Aspose.Imaging.CmykColorHelper.ToCmykIcc(rgbColor);
int c = Aspose.Imaging.CmykColorHelper.GetC(cmyk);
int m = Aspose.Imaging.CmykColorHelper.GetM(cmyk);
int y = Aspose.Imaging.CmykColorHelper.GetY(cmyk);
int k = Aspose.Imaging.CmykColorHelper.GetK(cmyk);
System.Console.WriteLine("RGB({0},{1},{2})\t\t=> CMYK({3},{4},{5},{6})", rgbColor.R, rgbColor.G, rgbColor.B, c, m, y, k);
}
// Especifique su ruta a los perfiles ICC RGB y CMYK.
string dir = "c:\\temp\\iccprofiles\\";
System.Console.WriteLine("Convertir RGB a CMYK usando perfiles ICC personalizados.");
using (System.IO.Stream rgbProfileStream = System.IO.File.OpenRead(dir + "eciRGB_v2.icc"))
using (System.IO.Stream cmykProfileStream = System.IO.File.OpenRead(dir + "ISOcoated_v2_FullGamut4.icc"))
{
foreach (Aspose.Imaging.Color rgbColor in rgbColors)
{
int cmyk = Aspose.Imaging.CmykColorHelper.ToCmykIcc(rgbColor, rgbProfileStream, cmykProfileStream);
int c = Aspose.Imaging.CmykColorHelper.GetC(cmyk);
int m = Aspose.Imaging.CmykColorHelper.GetM(cmyk);
int y = Aspose.Imaging.CmykColorHelper.GetY(cmyk);
int k = Aspose.Imaging.CmykColorHelper.GetK(cmyk);
System.Console.WriteLine("RGB({0},{1},{2})\t\t=> CMYK({3},{4},{5},{6})", rgbColor.R, rgbColor.G, rgbColor.B, c, m, y, k);
}
}
//La salida se verá así:
//Convertir RGB a CMYK usando perfiles ICC predeterminados.
//RGB(255,0,0) => CMYK(0,254,249,15)
//RGB(0,128,0) => CMYK(247,21,254,85)
//RGB(0,0,255) => CMYK(254,195,0,134)
//Convertir RGB a CMYK usando perfiles ICC personalizados.
//RGB(255,0,0) => CMYK(0,207,219,0)
//RGB(0,128,0) => CMYK(238,16,254,80)
//RGB(0,0,255) => CMYK(242,182,0,0)
### <a id="Aspose_Imaging_CmykColorHelper_ToPsdCmykIcc_System_Int32___"></a> ToPsdCmykIcc\(int\[\], Stream, Stream\)
La conversión de colores ARGB a colores CMYK utilizando conversión Icc con perfiles personalizados.
Utiliza el formato KCMY de CMYK de PSD con el orden de bytes K invertido.
```csharp
public static int[] ToPsdCmykIcc(int[] pixels, Stream rgbIccStream, Stream cmykIccStream)
Parámetros
pixels
int[]
Los colores ARGB.
rgbIccStream
Stream
El flujo que contiene el perfil Icc RGB.
cmykIccStream
Stream
El flujo que contiene el perfil Icc CMYK.
Devuelve
int[]
Los colores CMYK presentados como valores enteros de 32 bits en el orden de bytes KCMY con los valores de canal invertidos.
ToPsdCmykIcc(int[])
La conversión de colores ARGB a colores CMYK utilizando conversión Icc con perfiles predeterminados.
Utiliza el formato KCMY de CMYK de PSD con el orden de bytes K invertido.
public static int[] ToPsdCmykIcc(int[] pixels)
Parámetros
pixels
int[]
Los colores ARGB.
Devuelve
int[]
Los colores CMYK presentados como valores enteros de 32 bits en el orden de bytes KCMY con los valores de canal invertidos.
ToPsdCmykIcc(int)
La conversión de color ARGB a color CMYK utilizando conversión Icc con perfiles predeterminados.
Utiliza el formato KCMY de CMYK de PSD con el orden de bytes K invertido.
public static int ToPsdCmykIcc(int argb)
Parámetros
argb
int
El color ARGB.
Devuelve
El color CMYK presentado como un valor entero de 32 bits en el orden de bytes KCMY con los valores de canal invertidos.
ToPsdCmykIcc(int, Stream, Stream)
La conversión de color ARGB a color CMYK utilizando conversión Icc con perfiles personalizados.
public static int ToPsdCmykIcc(int pixel, Stream rgbIccStream, Stream cmykIccStream)
Parámetros
pixel
int
El color ARGB.
rgbIccStream
Stream
El flujo que contiene el perfil Icc RGB.
cmykIccStream
Stream
El flujo que contiene el perfil Icc CMYK.
Devuelve
Los colores CMYK presentados como valores enteros de 32 bits en el orden de bytes KCMY con los valores de canal invertidos.