17
17
* dual licence : http://www.cecill.info/licences/Licence_CeCILL_V2-fr.html
18
18
* http://www.gnu.org/licenses/gpl.html
19
19
*/
20
- var fs = require ( 'fs' ) ;
20
+
21
21
var barcode = {
22
22
settings : {
23
23
path : "barcode" ,
24
- toFile :true ,
24
+ toFile :false ,
25
25
width :100 ,
26
26
barWidth : 1 ,
27
27
barHeight : 50 ,
@@ -38,12 +38,12 @@ var barcode = {
38
38
} ,
39
39
intval : function ( val ) {
40
40
var type = typeof ( val ) ;
41
- if ( type == 'string' ) {
41
+ if ( type === 'string' ) {
42
42
val = val . replace ( / [ ^ 0 - 9 - .] / g, "" ) ;
43
43
val = parseInt ( val * 1 , 10 ) ;
44
44
return isNaN ( val ) || ! isFinite ( val ) ? 0 : val ;
45
45
}
46
- return type == 'number' && isFinite ( val ) ? Math . floor ( val ) : 0 ;
46
+ return type === 'number' && isFinite ( val ) ? Math . floor ( val ) : 0 ;
47
47
} ,
48
48
i25 : { // std25 int25
49
49
encoding : [ "NNWWN" , "WNNNW" , "NWNNW" , "WWNNN" , "NNWNW" , "WNWNN" , "NWWNN" , "NNNWW" , "WNNWN" , "NWNWN" ] ,
@@ -992,11 +992,8 @@ var barcode = {
992
992
var fontSize = barcode . intval ( settings . fontSize ) ;
993
993
height += barcode . intval ( settings . marginHRI ) + fontSize ;
994
994
}
995
- var svg = '<g>' ;
996
- if ( settings . toFile ) {
997
- // svg header
998
- svg = '<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 ' + width + ' ' + height + '" >' ;
999
- }
995
+ var svg = '<svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="' + width + 'px" height="' + height + 'px" viewBox="0 0 ' + width + ' ' + height + '" >' ;
996
+
1000
997
if ( settings . bgColor !== 'transparent' ) {
1001
998
// background
1002
999
svg += '<rect width="' + width + '" height="' + height + '" x="0" y="0" fill="' + settings . bgColor + '" />' ;
@@ -1035,12 +1032,11 @@ var barcode = {
1035
1032
svg += '<text y="' + ( height - Math . floor ( fontSize / 2 ) ) + '" text-anchor="middle" style="font-family: Arial; font-size: ' + fontSize + 'px;" fill="' + settings . color + '">' + hri + '</text>' ;
1036
1033
svg += '</g>' ;
1037
1034
}
1035
+ svg += '</svg>' ;
1038
1036
// svg footer
1039
1037
if ( settings . toFile ) {
1040
- svg += '</svg>' ;
1041
1038
return this . write ( settings , svg , 'svg' , callback ) ;
1042
1039
} else {
1043
- svg += '</g>' ;
1044
1040
return svg ;
1045
1041
}
1046
1042
} ,
@@ -1056,20 +1052,25 @@ var barcode = {
1056
1052
return this . digitToSvgRenderer ( settings , digit , hri , callback , s , s ) ;
1057
1053
} ,
1058
1054
write : function ( settings , data , type , callback ) {
1059
- fs . writeFile ( settings . path + '.' + type , data , null , function ( err ) {
1060
- var result = true ;
1061
- if ( err ) {
1062
- console . log ( err ) ;
1063
- result = false ;
1064
- return result ;
1065
- }
1066
- console . log ( '===svg barcode file create==' ) ;
1067
- if ( typeof callback === 'function' ) {
1068
- callback ( result ) ;
1069
- } else {
1070
- return true ;
1071
- }
1072
- } ) ;
1055
+ try {
1056
+ var fs = require ( 'fs' ) ;
1057
+ fs . writeFile ( settings . path + '.' + type , data , null , function ( err ) {
1058
+ var result = true ;
1059
+ if ( err ) {
1060
+ console . log ( err ) ;
1061
+ result = false ;
1062
+ return result ;
1063
+ }
1064
+ console . log ( '===svg barcode file create==' ) ;
1065
+ if ( typeof callback === 'function' ) {
1066
+ callback ( result ) ;
1067
+ } else {
1068
+ return true ;
1069
+ }
1070
+ } ) ;
1071
+ } catch ( err ) {
1072
+ console . error ( err ) ;
1073
+ }
1073
1074
}
1074
1075
1075
1076
} ;
@@ -1141,7 +1142,7 @@ module.exports = function (datas, type, settings, callback) {
1141
1142
b2d = true ;
1142
1143
break ;
1143
1144
}
1144
- if ( digit . length == 0 ) return false ;
1145
+ if ( digit . length === 0 ) return false ;
1145
1146
1146
1147
// Quiet Zone
1147
1148
if ( ! b2d && settings . addQuietZone ) digit = "0000000000" + digit + "0000000000" ;
0 commit comments