インポートとエクスポート
以下のブラウザー API を使用する前にインポート・エクスポート統合を完了してください。アップロード、変換、タスク照会、認可されたダウンロードの契約をアプリ側で実装します。スナップショット API にも変換バックエンドが必要です。Exchange サンプルは Sheets を対象とするため、他の製品や形式の対応状況は個別に確認してください。
対応形式
以下は本ページのブラウザー API が対応する形式です。Office ファイルの変換には、同じドキュメント種類と形式に対応したバックエンドが必要です。
| インポート | エクスポート |
|---|---|
.doc, .docx | .docx |
Facade API
インポート
プラグインモード注意
Facade パッケージの手動 import が必要なのはプラグインモードのみです。プリセットモードには対応する Facade パッケージが内蔵されているため、追加の import は不要です。
import '@univerjs-pro/exchange-client/facade'import '@univerjs-pro/docs-exchange-client/facade'.docx のインポート
.docx をインポートして unitId を取得
注意事項
この方法は共同編集が必要です。サーバーにドキュメントを作成し unitId
を返します。共同編集がない場合はスナップショットを使用してください。
共同編集が有効な場合、各ドキュメントは一意の unitId を持ちます。univerAPI.importDocToUnitIdAsync に file を渡すと unitId が返され、その unitId でドキュメントにアクセスできます。file は File オブジェクトまたはリモート URL を指定できます。
import '@univerjs-pro/collaboration-client/facade'const unitId = await univerAPI.importDocToUnitIdAsync(file)if (unitId) { await univerAPI.getCollaboration().loadDocAsync(unitId)}.docx をインポートして IDocumentData を取得
unitId を使用してください。univerAPI.importDocToSnapshotAsync を使用すると、.docx を IDocumentData 形式で取得できます。
// File オブジェクトを受け取るconst snapshot = await univerAPI.importDocToSnapshotAsync(file)// リモート URL を受け取る// const snapshot = await univerAPI.importDocToSnapshotAsync('https://example.com/filename.docx');// スナップショットから新規ドキュメントを作成if (snapshot) univerAPI.createDocument(snapshot).docx のエクスポート
unitId で .docx をエクスポート
注意事項
unitId でのエクスポートは共同編集が必要です。共同編集がない場合はスナップショットを使用してください。
共同編集が有効な場合、各ドキュメントには一意の unitId があります。univerAPI.exportDocByUnitIdAsync に unitId を渡すと File が返ります。
const fDocument = univerAPI.getActiveDocument()const unitId = fDocument.getId()const file = await univerAPI.exportDocByUnitIdAsync(unitId)// Facade API でファイルをダウンロードif (file) univerAPI.downloadFile(file, 'univer', 'docx')IDocumentData で .docx をエクスポート
univerAPI.exportDocBySnapshotAsync に IDocumentData を渡すと File が返ります。
const fDocument = univerAPI.getActiveDocument()const snapshot = fDocument.save()const file = await univerAPI.exportDocBySnapshotAsync(snapshot)// Facade API でファイルをダウンロードif (file) univerAPI.downloadFile(file, 'univer', 'docx')このガイドはいかがですか?