Merge XFA to PDFium master at 4dc95e7 on 10/28/2014
[pdfium.git] / xfa / src / fxbarcode / src / BC_Writer.cpp
1 // Copyright 2014 PDFium Authors. All rights reserved.\r
2 // Use of this source code is governed by a BSD-style license that can be\r
3 // found in the LICENSE file.\r
4 \r
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com\r
6 \r
7 #include "barcode.h"\r
8 #include "include/BC_Writer.h"\r
9 CBC_Writer::CBC_Writer()\r
10 {\r
11     m_CharEncoding              = 0;\r
12     m_ModuleHeight              = 1;\r
13     m_ModuleWidth               = 1;\r
14     m_Height                    = 320;\r
15     m_Width                             = 640;\r
16     m_colorSpace                = FXDIB_Argb;\r
17     m_barColor                  = 0xff000000;\r
18     m_backgroundColor   = 0xffffffff;\r
19 }\r
20 CBC_Writer::~CBC_Writer()\r
21 {\r
22 }\r
23 FX_BOOL CBC_Writer::SetCharEncoding(FX_INT32 encoding)\r
24 {\r
25     m_CharEncoding = encoding;\r
26     return TRUE;\r
27 }\r
28 FX_BOOL CBC_Writer::SetModuleHeight(FX_INT32 moduleHeight)\r
29 {\r
30     if (moduleHeight > 10 || moduleHeight < 1) {\r
31         return FALSE;\r
32     }\r
33     m_ModuleHeight = moduleHeight;\r
34     return TRUE;\r
35 }\r
36 FX_BOOL CBC_Writer::SetModuleWidth(FX_INT32 moduleWidth)\r
37 {\r
38     if ( moduleWidth > 10 || moduleWidth < 1) {\r
39         return FALSE;\r
40     }\r
41     m_ModuleWidth = moduleWidth;\r
42     return TRUE;\r
43 }\r
44 FX_BOOL CBC_Writer::SetHeight(FX_INT32 height)\r
45 {\r
46     m_Height = height;\r
47     return TRUE;\r
48 }\r
49 FX_BOOL CBC_Writer::SetWidth(FX_INT32 width)\r
50 {\r
51     m_Width = width;\r
52     return TRUE;\r
53 }\r
54 void CBC_Writer::SetBackgroundColor(FX_ARGB backgroundColor)\r
55 {\r
56     m_backgroundColor = backgroundColor;\r
57 }\r
58 void CBC_Writer::SetBarcodeColor(FX_ARGB foregroundColor)\r
59 {\r
60     m_barColor = foregroundColor;\r
61 }\r
62 CFX_DIBitmap* CBC_Writer::CreateDIBitmap(FX_INT32 width, FX_INT32 height)\r
63 {\r
64     CFX_DIBitmap *pDIBitmap = NULL;\r
65     pDIBitmap = FX_NEW CFX_DIBitmap;\r
66     if(pDIBitmap != NULL) {\r
67         pDIBitmap->Create(width, height, m_colorSpace);\r
68     }\r
69     return pDIBitmap;\r
70 }\r