PPTX Studio 0.2.0

Obsidian plugin · reads OOXML directly Obsidian プラグイン · OOXML を直接読む

Edit a PowerPoint deck without leaving your vault. PowerPoint のデッキを、vault から出ずに編集する。

Obsidian opens Markdown, images, audio, video, PDF and canvas. .pptx is not on that list, so a deck sitting in your vault is invisible in the file explorer and cannot be linked to. This plugin registers the extension and renders slides straight from the OOXML — no external converter, nothing to install alongside it. Obsidian が開けるのは Markdown・画像・音声・動画・PDF・Canvas。.pptx はその一覧に入っていません。だから vault の中のデッキはファイルエクスプローラに現れず、リンクも張れない。このプラグインは拡張子を登録し、OOXML から直接スライドを描画します。外部コンバータは不要で、併せて入れるものもありません。

Get PPTX StudioPPTX Studio を入手 Release notesリリースノート

Community plugins → Browse → “PPTX Studio” コミュニティプラグイン → 参照 → 「PPTX Studio」

md png mp3 mp4 pdf canvas pptx

Q3 review

Revenue held while spend fell

chart1.xml · drawn as SVG from the cached values

The same title, in the file同じタイトルを、ファイル側で見る ppt/slides/slide1.xml
<p:sp>
  <p:nvSpPr>
    <p:cNvPr id="7" name="Title 6"/>
    <p:nvPr><p:ph type="ctrTitle"/></p:nvPr>
  </p:nvSpPr>
  <p:spPr><a:xfrm>
    <a:off  x="838200"   y="365125"/>
    <a:ext cx="10515600" cy="1325563"/>
  </a:xfrm></p:spPr>
</p:sp>
x
88 px · 838,200 EMU
y
38.33 px · 365,125 EMU
w
1,104 px · 10,515,600 EMU
h
139.17 px · 1,325,563 EMU

What it doesできること

A PowerPoint-shaped editor, inside a Markdown app. Markdown アプリの中に、PowerPoint の形をしたエディタ。

A tabbed ribbon over a slide canvas: multi-select, marquee, drag, resize, rotate, snapping guides, z-order, align and distribute, group and ungroup, and a right-click menu that knows what is selected. スライドキャンバスの上にタブ付きリボン。複数選択、範囲選択、移動、リサイズ、回転、スナップガイド、重なり順、整列と均等配置、グループ化、そして選択内容を理解する右クリックメニュー。

Edit

Type straight into a slideスライドに直接入力する

Double-click a text box and type. Typing inside a bold word leaves it bold — the runs around your edit are kept intact. テキストボックスをダブルクリックして入力。太字の単語の内側に打っても太字のまま — 編集箇所の周りのランはそのまま保たれます。

Format

Down to the character文字単位まで

Font, size, weight, colour, alignment, bullets, list level, line spacing, fill and outline. With text selected it applies to exactly those characters. フォント、サイズ、太さ、色、配置、箇条書き、リストレベル、行間、塗りと枠線。テキストを選択していれば、その文字だけに適用されます。

Insert

Shapes, pictures, tables図形・画像・表

Text boxes, twelve shape presets, lines, pictures from the vault, and tables you can merge and split cells in. テキストボックス、12 種の図形プリセット、線、vault 内の画像、そしてセルの結合と分割ができる表。

Slides

Add, duplicate, reorder追加・複製・並べ替え

Build a slide from any layout in the deck, duplicate it, drag a thumbnail to move it, set a background colour. デッキ内の任意のレイアウトからスライドを作り、複製し、サムネイルをドラッグして並べ替え、背景色を設定します。

New in 0.2.0

Find and replace検索と置換

Across every slide, not just the one on screen. A phrase split across runs by a change of formatting is still found, and every hit is listed in context. 画面に出ているスライドだけでなく全スライドを対象に。書式変更でランが分断された語句も見つかり、すべての一致が文脈付きで一覧されます。

New in 0.2.0

PDF and printingPDF と印刷

The whole deck as a PDF, or straight to the print dialog. The PDF is written directly, so it needs nothing installed either. デッキ全体を PDF に、あるいはそのまま印刷ダイアログへ。PDF は自前で書き出すので、こちらも別途インストールは不要です。

New in 0.2.0

Transitions and animations画面切り替えとアニメーション

A transition per slide, and fade, wipe or fly in as an entrance — on click, with the previous effect, or after it. Written the way PowerPoint writes it. スライドごとの切り替えと、開始アニメーション(フェード・ワイプ・フライイン)。クリック時、直前と同時、直前の後から選べます。PowerPoint と同じ書き方で保存されます。

New in 0.2.0

Paste a picture画像を貼り付ける

An image on the system clipboard drops onto the slide. Where the clipboard offers the same picture several ways, the lossless one is taken. システムのクリップボードにある画像をそのままスライドへ。同じ画像が複数の形式で提供されている場合は、可逆な方を選びます。

Vault

Embed and extract埋め込みと抽出

![[deck.pptx]] embeds the deck in a note, ![[deck.pptx#3]] pins one slide. Extract to Markdown and the content becomes searchable and linkable. ![[deck.pptx]] でノートに埋め込み、![[deck.pptx#3]] で 1 枚だけ固定。Markdown に抽出すれば、内容が検索でき、リンクも張れるようになります。

The side paneサイドペイン

See what the file actually says. ファイルが実際に何と書いてあるかを見る。

Every shape on the slide in stacking order, and underneath it what the file says about the selected one: its id, the element it is, the part it lives in, its placeholder type, and its frame as both pixels on screen and the raw EMU stored in a:off and a:ext. スライド上のすべての図形を重なり順で並べ、その下に選択中の図形についてファイルが持つ情報を出します。id、要素の種類、所属パート、プレースホルダ種別、そして枠を画面上のピクセルと a:off / a:ext に格納された生の EMU の両方で。

The frame, the rotation and the name are fields, not labels: type over one and press Enter. A length takes pixels, or a number with a unit — emu, pt, in, cm, mm — so a value read out of another file can be pasted in as it stands. 枠・回転・名前はラベルではなく入力欄です。上書きして Enter を押せば反映されます。長さは px、または単位付きの数値(emu, pt, in, cm, mm)で受け付けるので、別のファイルから読んだ値をそのまま貼れます。

A shape with no a:xfrm of its own says so, rather than quietly reporting the frame it inherited from the layout. 自分の a:xfrm を持たない図形は、レイアウトから継承した枠を黙って表示するのではなく、持っていないことを明示します。

Selection選択 3 shapes · slide 4
p:sp Title 6
p:pic Screenshot 2
p:graphicFrame Table 9
id
2
element
p:pic
part
ppt/slides/slide4.xml
placeholder
x
256 px · 2,438,400 EMU
y
144 px · 1,371,600 EMU

Saving保存

Your deck comes back the way you left it. デッキは、置いたままの姿で戻ってくる。

Editing someone else's .pptx is only worth doing if nothing else in the file moves. Only the slide XML you touched is rewritten; every other part is repacked byte for byte. 他人の .pptx を編集する価値があるのは、ファイルの他の部分が動かない場合だけです。書き換えるのは触ったスライドの XML だけ。それ以外のパートはバイト単位でそのまま再梱包されます。

Byte for byte

Embedded fonts, and anything this plugin does not model, survive a save untouched because their parts are never re-serialised. 埋め込みフォントや、このプラグインがモデル化していない情報は、パートが再シリアライズされないため保存を経ても無変更で残ります。

A copy, once

The first save leaves deck.pptx.bak beside the file. Binary files do not go through Obsidian's file recovery, so that copy is your undo of last resort. 初回保存時に deck.pptx.bak を隣に残します。バイナリファイルは Obsidian のファイル復元を通らないため、この控えが最後の頼みになります。

No silent overwrite

If the file changed on disk since you opened it, the save is refused rather than overwriting someone else's work. 開いた後にディスク上のファイルが変わっていた場合、他人の作業を上書きせず、保存を拒否します。

Undo on parts

Undo records whole package parts, so one mechanism covers every command. The test suite runs the editor's commands, undoes them, and asserts every part is byte-identical. Undo はパッケージのパート単位で記録するため、ひとつの仕組みで全コマンドを賄えます。テストは全コマンドを実行して取り消し、各パートがバイト一致することを検証しています。

Templates left alone

Text inherited from a layout or master is drawn but not editable — changing it would silently rewrite every slide built on that template. レイアウトやマスターから継承したテキストは表示しますが編集できません。変更するとそのテンプレートを使う全スライドを黙って書き換えてしまうためです。

Guides, as PowerPoint stores them

Drag a guide out of a ruler and it is written into the deck the way PowerPoint writes it, so it shows up there too. ルーラーから引き出したガイドは PowerPoint と同じ形式でデッキに保存されるので、PowerPoint 側でも表示されます。

Why it stays responsiveなぜ軽いまま動くのか

An edit re-derives one slide, not the deck. 1 回の編集で作り直すのは、デッキではなく 1 枚。

The editor reports which package parts a command changed. A change confined to one slide's part rebuilds that slide alone; only a change reaching the presentation, a layout or a master rebuilds everything. Rendered slides are cached per index and only the edited one is dropped. エディタは、コマンドがどのパートを変更したかを報告します。1 枚のスライドのパートに収まる変更はそのスライドだけを作り直し、プレゼンテーション本体・レイアウト・マスターに及ぶ変更のときだけ全体を作り直します。描画済みのスライドは番号ごとにキャッシュされ、編集した 1 枚だけが破棄されます。

Slides are rendered as absolutely-positioned DOM at the deck's native pixel size and scaled with a CSS transform, so zooming is free and text stays crisp and selectable. スライドはデッキ本来のピクセルサイズで絶対配置の DOM として描画し、CSS transform で拡縮します。だからズームのコストはゼロで、文字は鮮明かつ選択可能なままです。

npm run smoke -- --bench
Deckデッキ Whole deck全体 One slide1 枚 Render描画
21 slides · 702 shapes 30.0 ms 0.58 ms 4.5 ms
27 slides · 233 shapes 60.6 ms 1.67 ms 6.1 ms

On the 27-slide deck that is 1.67 ms instead of 60.6, and one slide re-rendering instead of twenty-seven. 27 枚のデッキなら 60.6 ms ではなく 1.67 ms。再描画も 27 枚ではなく 1 枚です。

What it understands解釈できるもの

The parser covers what real decks actually use. 実際のデッキが本当に使っている範囲を解釈する。

Theme colour schemes and the lumMod / lumOff / tint / shade transforms. Placeholder inheritance from slide to layout to master. List styles and auto-numbered bullets, gradients, images with cropping, tables with merged cells, groups, connectors, and SmartArt — via the plain-shapes fallback drawing PowerPoint stores alongside it. テーマの配色と lumMod / lumOff / tint / shade の各変換。スライド → レイアウト → マスターへのプレースホルダ継承。リストスタイルと自動採番の箇条書き、グラデーション、トリミング付き画像、セル結合された表、グループ、コネクタ、そして SmartArt(PowerPoint が併せて保存する通常図形のフォールバック描画を使用)。

Charts are drawn as SVG — column, bar, stacked and percent-stacked, line, area, pie, doughnut and scatter — from the values every chart part caches alongside its embedded workbook. That cache is what the deck was showing when it was saved, so no spreadsheet has to be opened to plot it. A missing value stays a gap in the line rather than becoming a zero. グラフは SVG で描画します(縦棒・横棒・積み上げ・100% 積み上げ・折れ線・面・円・ドーナツ・散布図)。各グラフパートが埋め込みブックと一緒にキャッシュしている値を使うので、描画のためにスプレッドシートを開く必要はありません。欠損値は 0 にせず、線の途切れとして残します。

Installインストール

Three steps, no setup.3 ステップ、設定なし。

Open Settings → Community plugins → Browse. 設定 → コミュニティプラグイン → 参照 を開きます。

Search for PPTX Studio, install it, and enable it. PPTX Studio を検索してインストールし、有効にします。

Click any .pptx in the file explorer. It opens. ファイルエクスプローラで .pptx をクリックすれば開きます。

The interface follows Obsidian's own display language, so a Japanese vault gets a Japanese ribbon with nothing to configure. Desktop and mobile. MIT licensed. インターフェースは Obsidian の表示言語に従うので、日本語の vault では設定なしで日本語のリボンになります。デスクトップとモバイルの両対応、MIT ライセンスです。

Keyboardキーボード

Previous / next slide前後のスライド
Fit to paneペインに合わせる0
Speaker notesノート表示N
Edit the selected shape選択図形を編集Enter
Walk the shapes図形を順に選ぶTab
Nudge · 10 px微調整 · 10 px←→↑↓
Drag a copy複製をドラッグAlt
Ignore snappingスナップを無効化 / Ctrl
Find and replace検索と置換⌘F
Save保存⌘S