MCPcopy Create free account
hub / github.com/codemistic/Web-Development / makeMaskNo

Method makeMaskNo

text-to-qr/lib/phpqrcode/phpqrcode.php:2613–2648  ·  view source on GitHub ↗

----------------------------------------------------------------------

($maskNo, $width, $s, &$d, $maskGenOnly = false)

Source from the content-addressed store, hash-verified

2611
2612 //----------------------------------------------------------------------
2613 public function makeMaskNo($maskNo, $width, $s, &$d, $maskGenOnly = false)
2614 {
2615 $b = 0;
2616 $bitMask = array();
2617
2618 $fileName = QR_CACHE_DIR.'mask_'.$maskNo.DIRECTORY_SEPARATOR.'mask_'.$width.'_'.$maskNo.'.dat';
2619
2620 if (QR_CACHEABLE) {
2621 if (file_exists($fileName)) {
2622 $bitMask = self::unserial(file_get_contents($fileName));
2623 } else {
2624 $bitMask = $this->generateMaskNo($maskNo, $width, $s, $d);
2625 if (!file_exists(QR_CACHE_DIR.'mask_'.$maskNo))
2626 mkdir(QR_CACHE_DIR.'mask_'.$maskNo);
2627 file_put_contents($fileName, self::serial($bitMask));
2628 }
2629 } else {
2630 $bitMask = $this->generateMaskNo($maskNo, $width, $s, $d);
2631 }
2632
2633 if ($maskGenOnly)
2634 return;
2635
2636 $d = $s;
2637
2638 for($y=0; $y<$width; $y++) {
2639 for($x=0; $x<$width; $x++) {
2640 if($bitMask[$y][$x] == 1) {
2641 $d[$y][$x] = chr(ord($s[$y][$x]) ^ (int)$bitMask[$y][$x]);
2642 }
2643 $b += (int)(ord($d[$y][$x]) & 1);
2644 }
2645 }
2646
2647 return $b;
2648 }
2649
2650 //----------------------------------------------------------------------
2651 public function makeMask($width, $frame, $maskNo, $level)

Callers 3

makeMaskMethod · 0.95
maskMethod · 0.95
buildCacheMethod · 0.45

Calls 3

unserialMethod · 0.95
generateMaskNoMethod · 0.95
serialMethod · 0.95

Tested by

no test coverage detected