#include "core/fpdfapi/page/cpdf_devicecs.h"
#include <algorithm>
#include "core/fpdfapi/parser/cpdf_array.h"
#include "core/fpdfapi/parser/cpdf_dictionary.h"
#include "core/fpdfapi/parser/cpdf_document.h"
#include "core/fpdfapi/parser/cpdf_stream_acc.h"
#include "core/fpdfapi/parser/cpdf_string.h"
#include "core/fxcodec/fx_codec.h"
#include "core/fxcrt/check.h"
#include "core/fxcrt/compiler_specific.h"
#include "core/fxcrt/notreached.h"
#include "core/fxge/dib/cfx_cmyk_to_srgb.h"
namespace {
float NormalizeChannel(float fVal) { … }
}
CPDF_DeviceCS::CPDF_DeviceCS(Family family) : … { … }
CPDF_DeviceCS::~CPDF_DeviceCS() = default;
uint32_t CPDF_DeviceCS::v_Load(CPDF_Document* pDoc,
const CPDF_Array* pArray,
std::set<const CPDF_Object*>* pVisited) { … }
std::optional<FX_RGB_STRUCT<float>> CPDF_DeviceCS::GetRGB(
pdfium::span<const float> pBuf) const { … }
void CPDF_DeviceCS::TranslateImageLine(pdfium::span<uint8_t> dest_span,
pdfium::span<const uint8_t> src_span,
int pixels,
int image_width,
int image_height,
bool bTransMask) const { … }