{"id":"e6616509-4751-4220-bdfc-9421ec13cd54","shortId":"SkXu2y","kind":"skill","title":"lovstudio:pdf2png","tagline":"Convert PDF files to a single vertically concatenated PNG image using macOS native CoreGraphics. Each page is rendered at 2x scale and stitched top-to-bottom. ~20x faster than pdftoppm+ImageMagick, zero external dependencies on macOS. Trigger when the user mentions \"pdf to png\", ","description":"# pdf2png — PDF to Vertically Concatenated PNG\n\nConvert multi-page PDF files into a single tall PNG image. All pages are rendered\nat 2x scale (Retina quality) and stitched vertically. Uses macOS CoreGraphics\ndirectly — no pdftoppm, no ImageMagick, no Ghostscript.\n\n## When to Use\n\n- User wants to convert a PDF to a single PNG image\n- User needs a long screenshot-style image of a PDF\n- User wants to share PDF content as an image (WeChat, social media, etc.)\n\n## Workflow\n\n### Step 1: Identify PDF files\n\nLocate the PDF file(s) the user wants to convert. Confirm the path(s).\n\n### Step 2: Execute\n\n```bash\nbash lovstudio-pdf2png/scripts/pdf2png.sh /path/to/file.pdf\n```\n\nOutput: `/path/to/file.png` (same directory, same name, `.png` extension).\n\nFor multiple files:\n\n```bash\nbash lovstudio-pdf2png/scripts/pdf2png.sh file1.pdf file2.pdf file3.pdf\n```\n\n### Step 3: Verify\n\nCheck the output file exists and report its size.\n\n## CLI Reference\n\n| Argument | Description |\n|----------|-------------|\n| `file1.pdf [file2.pdf ...]` | One or more PDF files to convert |\n\nOutput is always `<input>.png` in the same directory as the input file.\n\n## Finder Quick Action\n\nThis skill can also be installed as a macOS Finder Quick Action for right-click\nconversion. See [lovstudio/mac-pdf2png](https://github.com/lovstudio/mac-pdf2png)\nfor the Automator workflow.\n\n## Dependencies\n\n```bash\npip install pyobjc-framework-Quartz --break-system-packages\n```","tags":["pdf2png","skills","lovstudio","agent-skills","ai-coding-assistant","cjk","claude-code","cursor","gemini-cli","markdown-to-docx","markdown-to-pdf"],"capabilities":["skill","source-lovstudio","skill-pdf2png","topic-agent-skills","topic-ai-coding-assistant","topic-cjk","topic-claude-code","topic-cursor","topic-gemini-cli","topic-markdown-to-docx","topic-markdown-to-pdf"],"categories":["skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/lovstudio/skills/pdf2png","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add lovstudio/skills","source_repo":"https://github.com/lovstudio/skills","install_from":"skills.sh"}},"qualityScore":"0.470","qualityRationale":"deterministic score 0.47 from registry signals: · indexed on github topic:agent-skills · 40 github stars · SKILL.md body (1,441 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-22T00:56:34.747Z","embedding":null,"createdAt":"2026-04-18T22:19:04.008Z","updatedAt":"2026-04-22T00:56:34.747Z","lastSeenAt":"2026-04-22T00:56:34.747Z","tsv":"'/lovstudio/mac-pdf2png)':237 '/path/to/file.pdf':155 '/path/to/file.png':157 '/scripts/pdf2png.sh':154,172 '1':128 '2':147 '20x':30 '2x':22,71 '3':177 'action':215,227 'also':219 'alway':203 'argument':190 'autom':240 'bash':149,150,167,168,243 'bottom':29 'break':251 'break-system-packag':250 'check':179 'cli':188 'click':231 'concaten':10,52 'confirm':142 'content':118 'convers':232 'convert':3,54,94,141,200 'coregraph':16,80 'depend':37,242 'descript':191 'direct':81 'directori':159,208 'etc':125 'execut':148 'exist':183 'extens':163 'extern':36 'faster':31 'file':5,59,131,135,166,182,198,212 'file1.pdf':173,192 'file2.pdf':174,193 'file3.pdf':175 'finder':213,225 'framework':248 'ghostscript':87 'github.com':236 'github.com/lovstudio/mac-pdf2png)':235 'identifi':129 'imag':12,65,101,109,121 'imagemagick':34,85 'input':211 'instal':221,245 'locat':132 'long':105 'lovstudio':1,152,170 'lovstudio-pdf2png':151,169 'lovstudio/mac-pdf2png':234 'maco':14,39,79,224 'media':124 'mention':44 'multi':56 'multi-pag':55 'multipl':165 'name':161 'nativ':15 'need':103 'one':194 'output':156,181,201 'packag':253 'page':18,57,67 'path':144 'pdf':4,45,49,58,96,112,117,130,134,197 'pdf2png':2,48,153,171 'pdftoppm':33,83 'pip':244 'png':11,47,53,64,100,162,204 'pyobjc':247 'pyobjc-framework-quartz':246 'qualiti':74 'quartz':249 'quick':214,226 'refer':189 'render':20,69 'report':185 'retina':73 'right':230 'right-click':229 'scale':23,72 'screenshot':107 'screenshot-styl':106 'see':233 'share':116 'singl':8,62,99 'size':187 'skill':217 'skill-pdf2png' 'social':123 'source-lovstudio' 'step':127,146,176 'stitch':25,76 'style':108 'system':252 'tall':63 'top':27 'top-to-bottom':26 'topic-agent-skills' 'topic-ai-coding-assistant' 'topic-cjk' 'topic-claude-code' 'topic-cursor' 'topic-gemini-cli' 'topic-markdown-to-docx' 'topic-markdown-to-pdf' 'trigger':40 'use':13,78,90 'user':43,91,102,113,138 'verifi':178 'vertic':9,51,77 'want':92,114,139 'wechat':122 'workflow':126,241 'zero':35","prices":[{"id":"ee80e2ab-df73-4a01-b458-cfb4c9ff1b37","listingId":"e6616509-4751-4220-bdfc-9421ec13cd54","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"lovstudio","category":"skills","install_from":"skills.sh"},"createdAt":"2026-04-18T22:19:04.008Z"}],"sources":[{"listingId":"e6616509-4751-4220-bdfc-9421ec13cd54","source":"github","sourceId":"lovstudio/skills/pdf2png","sourceUrl":"https://github.com/lovstudio/skills/tree/main/skills/pdf2png","isPrimary":false,"firstSeenAt":"2026-04-18T22:19:04.008Z","lastSeenAt":"2026-04-22T00:56:34.747Z"}],"details":{"listingId":"e6616509-4751-4220-bdfc-9421ec13cd54","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"lovstudio","slug":"pdf2png","github":{"repo":"lovstudio/skills","stars":40,"topics":["agent-skills","ai-coding-assistant","cjk","claude-code","cursor","gemini-cli","markdown-to-docx","markdown-to-pdf"],"license":"mit","html_url":"https://github.com/lovstudio/skills","pushed_at":"2026-04-21T15:57:51Z","description":"Agent skills for AI coding assistants — Markdown to PDF/DOCX with 14 themes, CJK support","skill_md_sha":"5de6de6a9c645219259f32e984bc5312fe385fba","skill_md_path":"skills/pdf2png/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/lovstudio/skills/tree/main/skills/pdf2png"},"layout":"multi","source":"github","category":"skills","frontmatter":{"name":"lovstudio:pdf2png","license":"MIT","description":"Convert PDF files to a single vertically concatenated PNG image using macOS native CoreGraphics. Each page is rendered at 2x scale and stitched top-to-bottom. ~20x faster than pdftoppm+ImageMagick, zero external dependencies on macOS. Trigger when the user mentions \"pdf to png\", \"pdf转png\", \"PDF转图片\", \"pdf拼接\", \"pdf截图\", \"convert pdf to image\", or wants to turn a multi-page PDF into one long PNG.","compatibility":"macOS only. Requires pyobjc-framework-Quartz (`pip install pyobjc-framework-Quartz`). Uses native CoreGraphics + AppKit via Python bridge."},"skills_sh_url":"https://skills.sh/lovstudio/skills/pdf2png"},"updatedAt":"2026-04-22T00:56:34.747Z"}}