{"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. If multiple PDFs or output\nlocation choices are ambiguous, use `AskUserQuestion` to confirm the path(s)\nbefore running conversion.\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.477","qualityRationale":"deterministic score 0.48 from registry signals: · indexed on github topic:agent-skills · 54 github stars · SKILL.md body (1,551 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-05-18T18:57:49.111Z","embedding":null,"createdAt":"2026-04-18T22:19:04.008Z","updatedAt":"2026-05-18T18:57:49.111Z","lastSeenAt":"2026-05-18T18:57:49.111Z","tsv":"'/lovstudio/mac-pdf2png)':253 '/path/to/file.pdf':171 '/path/to/file.png':173 '/scripts/pdf2png.sh':170,188 '1':129 '2':163 '20x':31 '2x':23,72 '3':193 'action':231,243 'also':235 'alway':219 'ambigu':151 'argument':206 'askuserquest':153 'autom':256 'bash':165,166,183,184,259 'bottom':30 'break':267 'break-system-packag':266 'check':195 'choic':149 'cli':204 'click':247 'concaten':11,53 'confirm':155 'content':119 'convers':161,248 'convert':4,55,95,142,216 'coregraph':17,81 'depend':38,258 'descript':207 'direct':82 'directori':175,224 'etc':126 'execut':164 'exist':199 'extens':179 'extern':37 'faster':32 'file':6,60,132,136,182,198,214,228 'file1.pdf':189,208 'file2.pdf':190,209 'file3.pdf':191 'finder':229,241 'framework':264 'ghostscript':88 'github.com':252 'github.com/lovstudio/mac-pdf2png)':251 'identifi':130 'imag':13,66,102,110,122 'imagemagick':35,86 'input':227 'instal':237,261 'locat':133,148 'long':106 'lovstudio':2,168,186 'lovstudio-pdf2png':1,167,185 'lovstudio/mac-pdf2png':250 'maco':15,40,80,240 'media':125 'mention':45 'multi':57 'multi-pag':56 'multipl':144,181 'name':177 'nativ':16 'need':104 'one':210 'output':147,172,197,217 'packag':269 'page':19,58,68 'path':157 'pdf':5,46,50,59,97,113,118,131,135,213 'pdf2png':3,49,169,187 'pdfs':145 'pdftoppm':34,84 'pip':260 'png':12,48,54,65,101,178,220 'pyobjc':263 'pyobjc-framework-quartz':262 'qualiti':75 'quartz':265 'quick':230,242 'refer':205 'render':21,70 'report':201 'retina':74 'right':246 'right-click':245 'run':160 'scale':24,73 'screenshot':108 'screenshot-styl':107 'see':249 'share':117 'singl':9,63,100 'size':203 'skill':233 'skill-pdf2png' 'social':124 'source-lovstudio' 'step':128,162,192 'stitch':26,77 'style':109 'system':268 'tall':64 'top':28 'top-to-bottom':27 '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':41 'use':14,79,91,152 'user':44,92,103,114,139 'verifi':194 'vertic':10,52,78 'want':93,115,140 'wechat':123 'workflow':127,257 'zero':36","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-05-18T18:57:49.111Z"}],"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":54,"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-05-17T09:28:31Z","description":"Top-level index for the Lovstudio skills ecosystem","skill_md_sha":"47517886dbbb962bf0577221ac817f57ae061de3","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-05-18T18:57:49.111Z"}}