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
cbc_code128.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
* Copyright 2011 ZXing authors
8
*
9
* Licensed under the Apache License, Version 2.0 (the "License");
10
* you may not use this file except in compliance with the License.
11
* You may obtain a copy of the License at
12
*
13
* http://www.apache.org/licenses/LICENSE-2.0
14
*
15
* Unless required by applicable law or agreed to in writing, software
16
* distributed under the License is distributed on an "AS IS" BASIS,
17
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18
* See the License for the specific language governing permissions and
19
* limitations under the License.
20
*/
21
22
#
include
"fxbarcode/cbc_code128.h"
23
24
#
include
<
memory
>
25
26
#
include
"core/fxcrt/fx_coordinates.h"
27
#
include
"fxbarcode/oned/BC_OnedCode128Writer.h"
28
29
CBC_Code128::
CBC_Code128
(
BC_TYPE
type)
30
:
CBC_OneCode
(
std
::make_unique<CBC_OnedCode128Writer>(type)) {}
31
32
CBC_Code128::~
CBC_Code128
() =
default
;
33
34
bool
CBC_Code128::
Encode
(
WideStringView
contents) {
35
auto
* pWriter = GetOnedCode128Writer();
36
if
(!pWriter
->
CheckContentValidity
(
contents
)
)
37
return
false
;
38
39
WideString
content(contents);
40
if
(contents.GetLength() % 2 && pWriter
->
GetType
(
)
==
BC_TYPE
::
kCode128C
)
41
content
+=
'0'
;
42
43
m_renderContents = pWriter->FilterContents(content.AsStringView());
44
ByteString
byteString = m_renderContents.ToUTF8();
45
return
pWriter->RenderResult(m_renderContents.AsStringView(),
46
pWriter->Encode(byteString));
47
}
48
49
bool
CBC_Code128::
RenderDevice
(
CFX_RenderDevice
* device,
50
const
CFX_Matrix
& matrix) {
51
return
GetOnedCode128Writer()
->
RenderDeviceResult
(
52
device, matrix, m_renderContents.AsStringView());
53
}
54
55
BC_TYPE
CBC_Code128::
GetType
() {
56
return
BC_TYPE
::
kCode128
;
57
}
58
59
CBC_OnedCode128Writer* CBC_Code128::GetOnedCode128Writer() {
60
return
static_cast
<CBC_OnedCode128Writer*>(m_pBCWriter.get());
61
}
BC_TYPE
BC_TYPE
Definition
BC_Library.h:20
BC_TYPE::kCode128C
@ kCode128C
Definition
BC_Library.h:26
BC_TYPE::kCode128
@ kCode128
Definition
BC_Library.h:24
ByteString
fxcrt::ByteString ByteString
Definition
bytestring.h:180
CBC_Code128::GetType
BC_TYPE GetType() override
Definition
cbc_code128.cpp:55
CBC_Code128::RenderDevice
bool RenderDevice(CFX_RenderDevice *device, const CFX_Matrix &matrix) override
Definition
cbc_code128.cpp:49
CBC_Code128::Encode
bool Encode(WideStringView contents) override
Definition
cbc_code128.cpp:34
CBC_Code128::CBC_Code128
CBC_Code128(BC_TYPE type)
Definition
cbc_code128.cpp:29
CBC_Code128::~CBC_Code128
~CBC_Code128() override
CBC_OneCode
Definition
cbc_onecode.h:20
CBC_OneDimWriter::RenderDeviceResult
bool RenderDeviceResult(CFX_RenderDevice *device, const CFX_Matrix &matrix, WideStringView contents)
Definition
BC_OneDimWriter.cpp:229
CBC_OnedCode128Writer::GetType
BC_TYPE GetType() const
Definition
BC_OnedCode128Writer.h:35
CBC_OnedCode128Writer::CheckContentValidity
bool CheckContentValidity(WideStringView contents) override
Definition
BC_OnedCode128Writer.cpp:96
CFX_Matrix
Definition
fx_coordinates.h:440
CFX_RenderDevice
Definition
cfx_renderdevice.h:39
fxcrt::WideString::operator+=
WideString & operator+=(wchar_t ch)
Definition
widestring.cpp:486
std
[33]
Definition
src_corelib_tools_qhash.cpp:421
WideStringView
fxcrt::WideStringView WideStringView
Definition
string_view_template.h:326
WideString
fxcrt::WideString WideString
Definition
widestring.h:207
qtwebengine
src
3rdparty
chromium
third_party
pdfium
fxbarcode
cbc_code128.cpp
Generated on
for Qt by
1.18.0