ComOfficeKit SDK

Word、Excel、PowerPointファイルを、ご自身のアプリとシステムで活用する

ComOfficeKitは、LynxOfficeを支えるドキュメントエンジンです。アプリ、社内ツール、AIのために、.docx、.xlsx、.pptxファイルをデバイス上で読み取り、編集し、保存し、レンダリングします。

.docx · .xlsx · .pptxデバイス上で動作

約60日間、無料で評価できます:iOSとmacOS · Windows

Swift

import DocumentCore

try SDKLicense.activate(key: licence)

// paragraphs, runs, tables and sections
let scene = try DocumentParser.parse(docxAt: url)
print(scene.body.count, "body elements")

// only the parts you changed are rewritten
try DocumentWriter.save(document: scene,
                        originalURL: url,
                        destinationURL: out)

1つのエンジン、3つの使いどころ

顧客がすでに使っているファイルを、自社のソフトウェアの中で読み取り、変更し、描画します。サーバーには何も送信されません。

アプリの中で

iPhone、iPad、Macアプリで、Officeファイルを開き、編集し、プレビューできます。

社内システムの中で

テンプレートの差し込み、レポートの生成、ワークブックからの数値の読み取りを、ご自身のツールの中で行えます。現時点ではmacOSとWindowsで動作し、Windows ServerとLinuxは開発中です。

AIとともに

AIアシスタントに、読み取りも編集もできるOfficeファイルを渡せます。すべての変更は、実際のファイルに書き戻されます。

開発できるものを見る

お客様がこのエンジンで実現している4つの用途です。各アニメーションは、横に示したコードを、表示しているファイルに対して実際に実行した結果を再生したものです。

ドキュメント生成

契約書テンプレートへの差し込み

CRM、人事、法務、社内ツール向け。

Swift

try SDKLicense.activate(key: licence)

var scene = try DocumentParser.parse(
    docxAt: template)
for (placeholder, value) in values {
    scene = WordSceneEditor.replaceAll(
        placeholder, with: value, in: scene,
        caseSensitive: true).scene
}
try DocumentWriter.save(
    document: scene, originalURL: template,
    destinationURL: output)
実際の表を含むWordの契約書テンプレートです。各プレースホルダーは、出現するすべての箇所で差し込まれ、ファイルの10個のパーツのうち9個が、バイト単位でそのまま保存されます。

プレビュー

サムネイルの表示とPDFの書き出し

ファイル管理アプリ、クラウドドライブ、チャットアプリ向け。

Swift

try SDKLicense.activate(key: licence)

let files: [ParsedDocument] = [
    .word(try DocumentParser.parse(
        docxAt: docx)),
    .workbook(try SpreadsheetParser.parse(
        xlsxAt: xlsx, rasterizer: nil)),
    .slides(try SlideParser.parse(
        pptxAt: pptx)),
]
for file in files {
    let pages = try DocumentRenderer
        .pageCount(of: file)
    let thumbnail = try DocumentRenderer
        .image(of: file, page: 0, scale: 0.5)
    show(thumbnail, pages)
}
let pdf = try DocumentRenderer.pdfData(
    of: files[0])
Word文書、Excelワークブック、PowerPointのプレゼンテーションのサムネイルを、ページ数とともにデバイス上で描画し、続いてWord文書を2ページのPDFに書き出します。

スプレッドシート計算

見積書の再計算

見積、財務、在庫管理向け。

Swift

try SDKLicense.activate(key: licence)

var book = try SpreadsheetParser.parse(
    xlsxAt: quote, rasterizer: nil)
book = WorkbookSceneEditor.settingCellValue(
    .number(25), formula: nil, at: quantity,
    sheetIndex: 0, in: book)!
// A cached result is never recomputed, so
// clear each formula's, then evaluate them.
let formulas = book.sheets[0].cells.filter {
    $0.formula != nil }
for cell in formulas {
    book = WorkbookSceneEditor.settingCellValue(
        .empty, formula: cell.formula,
        at: cell.reference, sheetIndex: 0,
        in: book)!
}
let context = SceneWorkbookContext(
    scene: book, homeSheetIndex: 0)
for cell in formulas {
    let value = Formula.evaluate(
        cell.formula!, in: context)
    book = WorkbookSceneEditor.settingCellValue(
        value, formula: cell.formula,
        at: cell.reference, sheetIndex: 0,
        in: book)!
}
try SpreadsheetWriter.save(
    workbook: book, originalURL: quote,
    destinationURL: output)
見積書の数量が10から25に変わると、それに依存するすべての数式が再計算され、合計は$439.02から$796.23になります。

AI連携

AIアシスタントによる契約書レビュー

ドキュメントをAIアシスタントにつなぎたい方向け。

エンジンを土台にしたMCPサーバーに接続したアシスタントが、契約書の変更履歴とコメントを一覧にし、変更を承諾して、コメントに返信します。右側のすべての呼び出しと応答は、サーバーから一字一句そのまま記録したものです。

サーバーはLynxOffice自身のものです。同じエンジンを、ご自身のチームで自社のAIにつなぎ込めます。

LynxOfficeのMCPサーバーを見る

lynxoffice-mcp 1.0.0から記録した、アシスタントの4回のツール呼び出しとサーバーの応答、およびエンジンが描画した変更前後の契約書です。

上のすべての値、画像、コードの各行は、エンジン1.1.0でDocumentCoreとAppleRenderを実際に実行した結果です。

LynxOfficeを支えるエンジンがベース

KDANのMac向けオフィススイートであるLynxOfficeは、このエンジンを使って、Word、Excel、PowerPointファイルを開き、編集し、保存します。AIアシスタントがドキュメントを読み取り、編集できるようにするMCPサーバーも、このエンジンを土台に作られています。

LynxOfficeでのエンジンの役割

  • .docx、.xlsx、.pptxファイルを開き、同じフォーマットで保存し直します
  • すべての編集をドキュメントモデルに保持します
  • 各ページを描画します
  • 数式を計算します

LynxOfficeが加えるもの

  • インターフェース(目に見えるエディター)
  • AI機能
  • PDF編集(エンジンではなくAppleのPDFKitを使用)

LynxOfficeを見る

エンジンができること

LynxOfficeを動かしているのと同じエンジンを、アプリ本体なしで利用できます。

実際のファイルの読み書き

.docx、.xlsx、.pptxを構造化されたモデルとして開き、同じフォーマットで保存し直します。変更していないパーツは、そのまま引き継がれます。

ページのレンダリング

ドキュメント、ワークブック、プレゼンテーションの任意のページを、画像またはPDFに描画します。

数式の計算

スプレッドシートの数式を計算し、Excel形式のエラー値は値として返します。

デバイス内で完結

ライセンスの確認を含め、ネットワーク通信は一切行わないため、ドキュメントがソフトウェアの外に出ることはありません。

よくある質問

ComOfficeKitはどのような方向けですか?

自社のアプリでOfficeドキュメントを読み取り、作成し、表示する必要のある開発者、それらのファイルを生成または読み取る社内ツールを開発するチーム、そしてそれらのファイルを自社のAIにつなげたい企業です。

ライセンスはどのような形態ですか?

サービス規約に基づき、約60日間無料で評価できます。キーはリリースごとにiOSとmacOS向けとWindows向けに公開されます。ライセンスについては、開発内容をお問い合わせフォームでお知らせいただくか、support@comofficekit.comまでメールをお送りください。

どのプラットフォームで利用できますか?

現在はiOS、iPadOS、macOS、Windowsに対応しています。Windows Server、Linux、Webは開発中です。

サーバーで実行できますか?

現時点ではmacOSとWindows 11で動作するため、自社のシステム内のMacまたはWindows 11 PCで実行できます。Windows ServerとLinuxは開発中です。

お使いのAIと連携できますか?

はい。AIアシスタントやエージェントは、これを通じてWord、Excel、PowerPointファイルを読み取り、編集でき、すべての変更は実際のファイルに書き戻されます。AIアシスタントがドキュメントを読み取り、編集できるようにするLynxOfficeのMCPサーバーも、同じエンジンを土台に作られています。

できないことは何ですか?

PDFファイルを開いたり編集したりすることはできません(ドキュメントをPDFにレンダリングすることはできます)。また、独自のユーザーインターフェースはありません。画面はご自身で作成し、SDKがドキュメントモデルを提供してページを描画します。

ComOfficeKitについてご相談ください

開発内容と必要なプラットフォームをお知らせください。営業チームから折り返しご連絡します。support@comofficekit.comへ直接メールをお送りいただくこともできます。