mirror of
https://github.com/UglyToad/PdfPig.git
synced 2025-12-21 11:13:55 +08:00
add full color space details and transformation into full bytes for indexed
This commit is contained in:
@@ -9,15 +9,23 @@
|
||||
{
|
||||
bytes = null;
|
||||
|
||||
var isColorSpaceSupported = image.ColorSpace == ColorSpace.DeviceGray || image.ColorSpace == ColorSpace.DeviceRGB;
|
||||
var hasValidDetails = image.ColorSpaceDetails != null &&
|
||||
!(image.ColorSpaceDetails is UnsupportedColorSpaceDetails);
|
||||
var actualColorSpace = hasValidDetails ? image.ColorSpaceDetails.BaseType : image.ColorSpace;
|
||||
|
||||
var isColorSpaceSupported =
|
||||
actualColorSpace == ColorSpace.DeviceGray || actualColorSpace == ColorSpace.DeviceRGB;
|
||||
|
||||
if (!isColorSpaceSupported || !image.TryGetBytes(out var bytesPure))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
bytesPure = ColorSpaceDetailsByteConverter.Convert(image.ColorSpaceDetails, bytesPure);
|
||||
|
||||
try
|
||||
{
|
||||
var is3Byte = image.ColorSpace == ColorSpace.DeviceRGB;
|
||||
var is3Byte = actualColorSpace == ColorSpace.DeviceRGB;
|
||||
var multiplier = is3Byte ? 3 : 1;
|
||||
|
||||
var builder = PngBuilder.Create(image.WidthInSamples, image.HeightInSamples, false);
|
||||
|
||||
Reference in New Issue
Block a user