// 开合状态 3D 截图: node this-file.cjs import puppeteer from 'puppeteer-core' const browser = await puppeteer.launch({ executablePath: 'C:/Program Files (x86)/Microsoft/Edge/Application/msedge.exe', headless: 'new', args: ['--window-size=1440,900', '--enable-unsafe-swiftshader', '--use-gl=angle', '--use-angle=swiftshader'], defaultViewport: { width: 1440, height: 900 }, }) const page = await browser.newPage() const token = process.argv[2] await page.goto(`http://localhost:8000/threed?token=${encodeURIComponent(token)}`, { waitUntil: 'networkidle2' }) await new Promise(r => setTimeout(r, 2200)) await page.evaluate(() => { const slider = document.querySelector('.ctrl input[type=range]') if (slider) { slider.value = '100' slider.dispatchEvent(new Event('input')) slider.dispatchEvent(new Event('change')) } }) await new Promise(r => setTimeout(r, 1000)) await page.screenshot({ path: 'D:/Code/huamenchuang/shots/07-threed-open.png' }) console.log('✓ 开合状态截图完成') await browser.close()