Skip to content

Latest commit

 

History

History
62 lines (38 loc) · 2.63 KB

File metadata and controls

62 lines (38 loc) · 2.63 KB

miniPDF - コンセプト文書

プロジェクト概要

miniPDF は、Markdown を編集しながら PDF をライブプレビューし、必要なら PDF を保存する軽量デスクトップアプリです。印刷に近い見た目をすぐ確認することを優先し、PDF 画面上でのブロック移動・リサイズ等のレイアウト編集は製品スコープに含めません。

目的(解決したい問題)

  • Markdown / Mermaid を PDF にしたときの見た目を、アプリ内で短いループで確認したい
  • 重い DTP / 汎用 PDF エディタはこの用途には大きすぎる
  • 左でソース・右でプレビューの体験で、推敲の摩擦を減らしたい

前提:

  • 本文の推敲は Markdown 側で行う
  • PDF は 確認・配布用の出力として扱う
  • Tauri + 軽量 UI で 起動と更新を速く保つ

問題の本質

Markdown / Mermaid と ページ単位の PDF レイアウトは層が異なる。人間が把握しにくい改ページや図の縮尺は、プレビューで見えてから Markdown や生成設定を直すのが自然である。

設計思想

PDF をプレビュー成果物として扱う

  • PDF.js で 読む・見せる
  • 生成は Rust 側のパイプラインに任せ、フロントは プレビュー専用(PDFViewer の previewOnly)を既定とする

編集の主戦場は Markdown

  • 見出し・空行・コードブロック・Mermaid ソースで体裁を整える
  • 印刷で空白や図切れが出る場合は 生成ロジックの改善や文書側の調整を検討する(追跡用メモ: bugs/print-preview-quality-followup.md)

実装イメージ

アプリの性格

  • 軽量デスクトップ(Tauri + React + TypeScript)
  • OSS

操作感

  1. Markdown を開くか、エディタに入力する
  2. 右ペインで PDF プレビューが更新される
  3. ズーム・ページ送り・連続/1ページ表示で確認する
  4. Markdown または PDF を保存する

技術的割り切り

  • Mermaid は生成パイプラインで画像化し得るが、キャンバス上の直接編集 UI は持たない
  • 旧コードベースにレイアウト編集用コンポーネントが残っていても、既定 UI からは外す

技術スタック

  • Tauri + WebView
  • PDF.js(プレビュー描画)
  • lopdf 等(Rust 側の PDF 生成・保存)

一言で言うと

Markdown を書きながら PDF をプレビューし、軽く保存まで行うデスクトップ用ミニツール