対応形式

BDF は、入力ごとに converter/ 以下の別パッケージが変換を担います。プログラムが扱えるのは、リンクした形式だけです。

import (
	"github.com/shibukawa/bdf/converter"
	_ "github.com/shibukawa/bdf/converter/pdf" // すべての形式なら converter/all
)

res, err := converter.ConvertFile("in.pdf", "", &converter.Options{}) // "" で形式を判別

形式は可能な限り入力の中身から判別します。Markdown はどんなテキストにも見えるので .md・.markdown 拡張子から決めます。パスワード付きの入力は Options.Password で開きます。res.Protected が「パスワードが要った」ことを示したら、出力も同じパスワードで暗号化します(パスワードと保護モードを参照)。

カテゴリ別

カテゴリ 形式 ページ
文書 PDF、Illustrator(.ai) PDF・Illustrator
ワープロ Word(.docx)、HTML、Markdown Word・HTML・Markdown
プレゼンテーション PowerPoint(.pptx) PowerPoint
ページレイアウト InDesign(.idml) InDesign
表計算 Excel(.xlsx)、CSV・TSV、Apache Parquet Excel・CSV・Parquet
図 Visio(.vsdx)、draw.io Visio・draw.io
CAD の図面とプロット AutoCAD DXF、Jw_cad(.jww)、SXF、CGM、HP-GL/2 CAD の図面とプロット
電子回路 Gerber・Excellon(プリント基板)、KiCad プリント基板・KiCad
本 EPUB EPUB
音楽 MML、MIDI、MusicXML 楽譜
音声 MP3、AAC(M4A、ADTS)、FLAC、Ogg Vorbis・Opus、WAV、AIFF 音声ファイル
フォント TrueType・OpenType・WOFF・WOFF2 フォントファイル
画像・デザイン PNG・JPEG・GIF・WebP・AVIF・BMP・ICO・SVG、Photoshop、TIFF、Windows メタファイル 画像・Photoshop

すべての入力形式

形式 パッケージ 拡張子
PDF converter/pdf .pdf
Illustrator converter/ai .ai
Photoshop converter/psd .psd, .psb
PowerPoint converter/pptx .pptx, .pptm, .ppsx, .ppsm, .potx, .potm
Excel converter/xlsx .xlsx, .xlsm, .xltx, .xltm
CSV・TSV converter/csv .csv, .tsv, .tab
Apache Parquet converter/parquet .parquet, .parq, .pqt
Word converter/docx .docx, .docm, .dotx, .dotm
Visio converter/visio .vsdx, .vsdm, .vstx, .vstm
InDesign converter/idml .idml
draw.io converter/drawio .drawio, .dio, .drawio.svg, .drawio.png
AutoCAD DXF converter/dxf .dxf
Jw_cad converter/jww .jww
SXF converter/sxf .p21, .p2z, .sfc
CGM converter/cgm .cgm, .cgz
HP-GL/2 converter/hpgl .plt, .hpgl, .hgl, .hpg, .hp2, .rtl
Gerber・Excellon converter/gerber .gbr など、.drl、.xln、または基板の ZIP
KiCad converter/kicad .kicad_sch, .kicad_pcb, .kicad_pro、またはプロジェクトの ZIP
Windows メタファイル converter/emf .emf, .wmf
TIFF converter/tiff .tif, .tiff
HTML converter/html .html, .xhtml, .mhtml
Markdown converter/markdown .md, .markdown, .mdown, .mkd, .mdx
EPUB converter/epub .epub
MML converter/mml .mml
MIDI converter/midi .mid, .midi, .smf, .kar, .rmi
MusicXML converter/musicxml .musicxml, .mxl
フォントファイル converter/font .ttf, .otf, .ttc, .otc, .woff, .woff2
画像 converter/image .png, .jpg, .gif, .webp, .avif, .bmp, .ico, .svg
音声ファイル converter/audio .mp3, .m4a, .m4b, .aac, .flac, .ogg, .oga, .opus, .wav, .aif, .aiff

各パッケージの -param オプションは go run ./cmd/bdf generate -h の一覧と、それぞれの形式のページに載せています。各変換器が書き出すコンテナ形式はフォーマット仕様を、その作りになっている理由は設計メモを参照してください。