CentOS で LibreOffice を使用してドキュメント形式を変換する方法

CentOS で LibreOffice を使用してドキュメント形式を変換する方法

プロジェクト要件では、アップロードされたドキュメントの前処理が必要です。ユーザーが doc 形式でドキュメントをアップロードした場合、後続のプロセスでドキュメントのコンテンツを抽出できるように、docx または pdf 形式に処理する必要があります。

最初にphpoffice/phpwordパッケージを試してみましたが、ドキュメントの変換が理想的ではないことがわかりました。このパッケージは、ドキュメントの変換よりもコンテンツに基づいてドキュメントを生成するのに適していますが、私のニーズにはあまり適していません。

そんな時に、オープンソースツールのLibreOfficeを発見しました。使ってみて、とても効果的であることがわかったので、皆さんにシェアしたいと思います。

サーバーは CentOS7 です。yum を使用して LibreOffice を直接インストールします。約 600MB 以上のディスク容量が必要です。

# 以前にインストールされないように、インストール前に削除することができます。yum remove libreoffice-*
yum で libreoffice をインストール

インストールが完了するのを待った後、バージョンを確認します。公式バージョンは 6.1 ですが、yum パッケージは 5.3.6 のままですが、使用に問題はありません。ここでも、独自の Linux システム パッケージ管理ツールを使用してインストールすることをお勧めします。これにより、多くの手間を省くことができます。

[root@localhost /]# soffice --version
LibreOffice 5.3.6.1 30 (ビルド: 1)

使い方がわからない場合は、soffice --help を使用してヘルプを参照できます。パラメータと使用例はたくさんあります。フォーマット変換は非常に簡単です。

soffice --headless --convert-to docx /opt/upload/source/123.doc --outdir /opt/upload/source

上記のコマンドは、 /opt/upload/source/123.doc upload/source/123.doc ファイルを docx 形式に変換し、/ opt/upload/sourceフォルダーに出力します。

デフォルトでは:

  1. 出力ファイルはソースファイル名 + 新しい拡張子で保存されます。
  2. outdir 内の同じ名前の既存のファイルを上書きします。

変換が成功すると、次のような出力が表示されます。

フィルターを使用して /opt/upload/source/123.doc -> /opt/upload/source/123.docx に変換: MS Word 2007 XML
上書き: /opt/upload/source/123.docx

LibreOffice はファイル形式に応じて自動的にフォーマットフィルターをマッチングします。サポートされるフォーマットについては、公式 Web サイトを参照してください。

要約する

以上が、CentOS で LibreOffice を使用してドキュメント形式の変換を実現する方法についての編集者による紹介です。皆様のお役に立てれば幸いです。ご質問がございましたら、メッセージを残していただければ、すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • Linux システムで Centos7 を使って ElasticSearch ミドルウェアと共通インターフェースを構築するデモ
  • Centos7 で ZooKeeper3.4 ミドルウェアを構築するための一般的なコマンドの概要

<<:  mysql8.0 Windows x64 zip パッケージのインストールと構成のチュートリアル

>>:  Vueで親子コンポーネント通信を実装する方法

推薦する

CSSポジショニングによる階層関係の問題の詳細な説明

絶対、相対、固定位置の位置決めabsolue: 絶対配置。上、下、左、右を使用して、配置先の親要素に...

Ubuntu16.04にCUDA9.0をインストールするための詳細なチュートリアル

序文:この記事は、CUDA 9.0 をインストールした経験に基づいています。CUDA 9.0 は現在...

Windows Server 2016 で Flash を有効にする方法

最近、VMware Horizo​​n を導入してテストしましたが、そのコンソールにはデフォルトで ...

VUEはFlappy Birdゲームのサンプルコードを実装します

Flappy Bird は、誰もがアプリでプレイしたことがある非常にシンプルな小さなゲームです。ここ...

Linux で Docker を使用して MySQL をインストールする手順

テスターとして、学習プロセス中に Linux でソフトウェアをインストールする必要が頻繁にある場合が...

Linuxサーバーのファイアウォールを変更してポートへのリモートアクセスを許可する方法

1. 問題の説明セキュリティ上の理由から、新しく構築されたサーバー クラスターでは、指定されたポート...

CSS 標準: vertical-align プロパティ

<br />原文: http://www.mikkolee.com/13私は最近、ver...

MysqlクエリJSON結果に関連する関数の概要

JSON 形式のフィールドは、MySQL 5.7 で追加された新しい属性ですが、基本的には文字列とし...

Centos サーバーで nginx を設定する方法の例

セキュアターミナルMobaXterm_Personalをダウンロードまず、安全なターミナルをダウンロ...

VMwareがモジュールディスクを早期に開けない場合の解決策の詳細な説明

VMWare (Virtual Machine ware) は、「仮想 PC」ソフトウェア会社です。...

Vueは小さな天気予報アプリケーションを実装します

これは私が Vue フレームワークを独学していたときに真似したウェブサイトです。いくつかの都市の天気...

ボタンをクリックして画像を切り替える JavaScript

この記事の例では、ボタンをクリックすることで画像を切り替えることを実現するJavaScriptの具体...

Vue命令の実装原理の分析

目次1. 基本的な使い方2. 指示の動作原理2.1. 初期化2.2 テンプレートのコンパイル2.3....

MySQL データベースの最適化: テーブルとデータベースのシャーディング操作の詳細な説明

この記事では、例を使用して、MySQL データベースの最適化のためのテーブルおよびデータベース シャ...

Vue.jsはコンポーネントを通じてアイコンを処理します

アイコン処理ソリューションこの記録の目的は、element-plus 以外のアイコンをコンポーネント...