renderCustom($matrix, $style, false); // Save $filename = preg_replace('/[^a-zA-Z0-9]/', '_', $testData); $filepath = __DIR__ . "/test-qrcodes/test-{$filename}.svg"; file_put_contents($filepath, $svg); echo "✅ Generated: {$filepath}\n"; echo " Matrix size: {$matrix->getSize()}x{$matrix->getSize()}\n"; // Check canvas size if (preg_match('/width="(\d+)" height="(\d+)"/', $svg, $matches)) { echo " Canvas size: {$matches[1]}x{$matches[2]}\n"; if ((int)$matches[1] === 580) { echo " ✅ Canvas size matches problematic SVG\n"; } } echo "\n"; } catch (\Exception $e) { echo "❌ Error: " . $e->getMessage() . "\n\n"; } } echo "=== Summary ===\n"; echo "All test QR codes generated with:\n"; echo " - Canvas: 580x580px\n"; echo " - Module size: 20px\n"; echo " - Quiet zone: 80px (4 modules)\n"; echo "\n"; echo "Try scanning these QR codes to see if any work.\n"; echo "If they all work, the issue is with the data in the problematic SVG.\n"; echo "If none work, there might be a systematic issue.\n";