blob: 9a109bfbdd7a7ecfc9c1fa170bffd837e0fb837f [file] [log] [blame]
// Copyright 2014 PDFium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
#include "fxbarcode/BC_Writer.h"
CBC_Writer::CBC_Writer() {
m_CharEncoding = 0;
m_ModuleHeight = 1;
m_ModuleWidth = 1;
m_Height = 320;
m_Width = 640;
m_colorSpace = FXDIB_Argb;
m_barColor = 0xff000000;
m_backgroundColor = 0xffffffff;
}
CBC_Writer::~CBC_Writer() {}
bool CBC_Writer::SetCharEncoding(int32_t encoding) {
m_CharEncoding = encoding;
return true;
}
bool CBC_Writer::SetModuleHeight(int32_t moduleHeight) {
if (moduleHeight > 10 || moduleHeight < 1) {
return false;
}
m_ModuleHeight = moduleHeight;
return true;
}
bool CBC_Writer::SetModuleWidth(int32_t moduleWidth) {
if (moduleWidth > 10 || moduleWidth < 1) {
return false;
}
m_ModuleWidth = moduleWidth;
return true;
}
bool CBC_Writer::SetHeight(int32_t height) {
m_Height = height;
return true;
}
bool CBC_Writer::SetWidth(int32_t width) {
m_Width = width;
return true;
}
void CBC_Writer::SetBackgroundColor(FX_ARGB backgroundColor) {
m_backgroundColor = backgroundColor;
}
void CBC_Writer::SetBarcodeColor(FX_ARGB foregroundColor) {
m_barColor = foregroundColor;
}
CFX_RetainPtr<CFX_DIBitmap> CBC_Writer::CreateDIBitmap(int32_t width,
int32_t height) {
auto pDIBitmap = pdfium::MakeRetain<CFX_DIBitmap>();
pDIBitmap->Create(width, height, m_colorSpace);
return pDIBitmap;
}