AgentSkillsCN

file-convert

在不同文件格式之间进行转换(文档、图片、音频、视频)。

SKILL.md
--- frontmatter
name: file-convert
description: Convert between file formats (documents, images, audio, video).
tags: [convert, files, cross-platform]

File Format Conversion

Convert between document, image, audio, and video formats using cross-platform CLI tools.

Document Conversion (Pandoc)

Markdown to HTML:

code
exec: pandoc /path/to/input.md -o /path/to/output.html

Markdown to PDF (requires LaTeX):

code
exec: pandoc /path/to/input.md -o /path/to/output.pdf

Markdown to Word (.docx):

code
exec: pandoc /path/to/input.md -o /path/to/output.docx

Word to Markdown:

code
exec: pandoc /path/to/input.docx -o /path/to/output.md

HTML to Markdown:

code
exec: pandoc /path/to/input.html -t markdown -o /path/to/output.md

Word to PDF:

code
exec: pandoc /path/to/input.docx -o /path/to/output.pdf

With table of contents:

code
exec: pandoc /path/to/input.md --toc -o /path/to/output.pdf

With custom CSS (HTML output):

code
exec: pandoc /path/to/input.md -c /path/to/style.css --standalone -o /path/to/output.html

Image Conversion (ImageMagick)

PNG to JPEG:

code
exec: convert /path/to/input.png /path/to/output.jpg

Resize image:

code
exec: convert /path/to/input.png -resize 800x600 /path/to/output.png

Resize keeping aspect ratio:

code
exec: convert /path/to/input.png -resize 800x /path/to/output.png

Batch convert:

code
exec: for f in /path/to/dir/*.png; do convert "$f" "${f%.png}.jpg"; done

Compress JPEG:

code
exec: convert /path/to/input.jpg -quality 75 /path/to/output.jpg

Create thumbnail:

code
exec: convert /path/to/input.png -thumbnail 200x200 /path/to/thumb.png

PDF to images:

code
exec: convert /path/to/input.pdf /path/to/output-%03d.png

Images to PDF:

code
exec: convert /path/to/img1.png /path/to/img2.png /path/to/output.pdf

Get image info:

code
exec: identify /path/to/image.png

Image Conversion (sips — macOS built-in)

Convert format:

code
exec: sips -s format jpeg /path/to/input.png --out /path/to/output.jpg

Resize:

code
exec: sips --resampleWidth 800 /path/to/input.png --out /path/to/output.png

Get properties:

code
exec: sips -g pixelWidth -g pixelHeight -g format /path/to/image.png

Audio/Video Conversion (FFmpeg)

Video format conversion:

code
exec: ffmpeg -i /path/to/input.mov -c:v libx264 -c:a aac /path/to/output.mp4

Extract audio from video:

code
exec: ffmpeg -i /path/to/input.mp4 -vn -acodec libmp3lame /path/to/output.mp3

Convert audio format:

code
exec: ffmpeg -i /path/to/input.wav /path/to/output.mp3

Video to GIF:

code
exec: ffmpeg -i /path/to/input.mp4 -vf "fps=10,scale=480:-1" /path/to/output.gif

Trim video:

code
exec: ffmpeg -i /path/to/input.mp4 -ss 00:00:30 -t 00:01:00 -c copy /path/to/output.mp4

Resize video:

code
exec: ffmpeg -i /path/to/input.mp4 -vf "scale=1280:720" /path/to/output.mp4

Get media info:

code
exec: ffprobe -v quiet -print_format json -show_format -show_streams /path/to/media.mp4

Text Encoding

Convert encoding:

code
exec: iconv -f GB2312 -t UTF-8 /path/to/input.txt > /path/to/output.txt

Detect encoding:

code
exec: file -I /path/to/file.txt

Base64

Encode:

code
exec: base64 /path/to/file > /path/to/file.b64

Decode:

code
exec: base64 -d /path/to/file.b64 > /path/to/file

Notes

  • Pandoc: Install with brew install pandoc or apt install pandoc. PDF output needs LaTeX (brew install basictex).
  • ImageMagick: Install with brew install imagemagick or apt install imagemagick. On macOS, sips is built-in.
  • FFmpeg: Install with brew install ffmpeg or apt install ffmpeg.
  • iconv and base64 are pre-installed on macOS and Linux.
  • All tools work cross-platform (macOS, Linux, Windows WSL).