Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
cpdf_transferfunc.cpp
Go to the documentation of this file.
1
// Copyright 2016 The PDFium Authors
2
// Use of this source code is governed by a BSD-style license that can be
3
// found in the LICENSE file.
4
5
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6
7
#
include
"core/fpdfapi/page/cpdf_transferfunc.h"
8
9
#
include
<
stdint
.
h
>
10
11
#
include
<
utility
>
12
13
#
include
"core/fpdfapi/page/cpdf_transferfuncdib.h"
14
#
include
"core/fpdfapi/parser/cpdf_document.h"
15
#
include
"core/fxcrt/check_op.h"
16
#
include
"core/fxcrt/fixed_size_data_vector.h"
17
#
include
"core/fxge/dib/cfx_dibbase.h"
18
19
CPDF_TransferFunc::CPDF_TransferFunc(
bool
bIdentify,
20
FixedSizeDataVector<uint8_t> samples_r,
21
FixedSizeDataVector<uint8_t> samples_g,
22
FixedSizeDataVector<uint8_t> samples_b)
23
: m_bIdentity(bIdentify),
24
m_SamplesR(std::move(samples_r)),
25
m_SamplesG(std::move(samples_g)),
26
m_SamplesB(std::move(samples_b)) {
27
DCHECK_EQ
(m_SamplesR.size(), kChannelSampleSize);
28
DCHECK_EQ
(m_SamplesG.size(), kChannelSampleSize);
29
DCHECK_EQ
(m_SamplesB.size(), kChannelSampleSize);
30
}
31
32
CPDF_TransferFunc::~
CPDF_TransferFunc
() =
default
;
33
34
FX_COLORREF
CPDF_TransferFunc::
TranslateColor
(
FX_COLORREF
colorref)
const
{
35
return
FXSYS_BGR(m_SamplesB.span()[FXSYS_GetBValue(colorref)],
36
m_SamplesG.span()[FXSYS_GetGValue(colorref)],
37
m_SamplesR.span()[FXSYS_GetRValue(colorref)]);
38
}
39
40
RetainPtr
<
CFX_DIBBase
> CPDF_TransferFunc::
TranslateImage
(
41
RetainPtr
<
CFX_DIBBase
> pSrc) {
42
return
pdfium
::MakeRetain<CPDF_TransferFuncDIB>(
std
::move(pSrc),
43
pdfium
::WrapRetain(
this
));
44
}
45
46
pdfium
::
span
<
const
uint8_t
> CPDF_TransferFunc::
GetSamplesR
()
const
{
47
return
m_SamplesR;
48
}
49
50
pdfium
::
span
<
const
uint8_t
> CPDF_TransferFunc::
GetSamplesG
()
const
{
51
return
m_SamplesG;
52
}
53
54
pdfium
::
span
<
const
uint8_t
> CPDF_TransferFunc::
GetSamplesB
()
const
{
55
return
m_SamplesB;
56
}
DCHECK_EQ
#define DCHECK_EQ(x, y)
Definition
check_op.h:17
CFX_DIBBase
Definition
cfx_dibbase.h:35
CPDF_TransferFunc::~CPDF_TransferFunc
~CPDF_TransferFunc() override
CPDF_TransferFunc::GetSamplesR
pdfium::span< const uint8_t > GetSamplesR() const
Definition
cpdf_transferfunc.cpp:46
CPDF_TransferFunc::TranslateImage
RetainPtr< CFX_DIBBase > TranslateImage(RetainPtr< CFX_DIBBase > pSrc)
Definition
cpdf_transferfunc.cpp:40
CPDF_TransferFunc::GetSamplesB
pdfium::span< const uint8_t > GetSamplesB() const
Definition
cpdf_transferfunc.cpp:54
CPDF_TransferFunc::TranslateColor
FX_COLORREF TranslateColor(FX_COLORREF colorref) const
Definition
cpdf_transferfunc.cpp:34
CPDF_TransferFunc::GetSamplesG
pdfium::span< const uint8_t > GetSamplesG() const
Definition
cpdf_transferfunc.cpp:50
fxcrt::RetainPtr
Definition
retain_ptr.h:28
pdfium::CFDETextOutLargeBitmapTest
Definition
cfde_textout_unittest.cpp:117
FX_COLORREF
uint32_t FX_COLORREF
Definition
fx_dib.h:42
std
[33]
Definition
src_corelib_tools_qhash.cpp:421
qtwebengine
src
3rdparty
chromium
third_party
pdfium
core
fpdfapi
page
cpdf_transferfunc.cpp
Generated on
for Qt by
1.18.0