質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
PDF

PDF(Portable Document Format)とはISOによって国際標準として制定されている電子ドキュメント用の拡張子です。

Q&A

解決済

3回答

13197閲覧

サーバーサイドで excel ⇒ pdf への変換

K.T_build

総合スコア29

PDF

PDF(Portable Document Format)とはISOによって国際標準として制定されている電子ドキュメント用の拡張子です。

0グッド

2クリップ

投稿2017/09/21 01:17

編集2022/08/31 11:40

サーバー上で excel ⇒ pdf の変換を行いたいと考えています。
Libreofficeでコマンドラインで変換できると聞き、それで対応しようかと考えていましたが、変換すると余白の調整ができず、意図しないところで改ページされた状態でPDF化されてしまいます。

請求書1

【追記】
coco_bauerさんの指摘により、現状は下記のようになりました。
※2ページ目あり、縦幅が狭まるのが問題
(コマンドライン変換)
コマンドライン変換
(原本をofficeで変換) ※この形式にしたい
原本をofficeで変換

--helpでヘルプを見たり、ドキュメントを調べましたが余白の調整等などの
オプションは無いように思えました。
ドキュメント

何か方法はないでしょうか?

【追記】
excel ⇒ pdf にする理由は下記二点となります。
①excelの生成処理を既に作成しているのでそれを利用することの工数短縮
②pdfを直接生成すると、excelと同じレイアウトに収まるかどうか不安がある

【追記2】
libreofficeでの変換以外にも、他にこういった方法があるよ と教えていただければ助かります。

  • 環境
    CentOs 7.3.1611
    PHP 5.4.16
    libreoffice 5.4.1.2

# /usr/lib64/libreoffice/program/soffice.bin --convert-to pdf --outdir /var/www/html/hoge/app/webroot/download/ --headless /var/www/html/hoge/app/webroot/excel/hoge.xlsx

何卒ご助力いただければと思います。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

coco_bauer

2017/09/21 01:37

excelファイルで印刷時のページ設定ができますが、"縦横とも1ページに合わせて印刷(1枚に全部を印刷する)"という設定はされていますか?
K.T_build

2017/09/21 02:24 編集

回答ありがとうございます。 このシートですが、行数が多くなった場合、2ページにまたがるのでその設定は入れておりません。office2015で「すべての列を1ページに印刷」をすることで横幅がはみ出ることはなくなりました。 ただ、その調整によって、縦幅が縮小されてしまう問題が発生しました。
coco_bauer

2017/09/21 02:32

どのようになれば良いのですか? "意図しない場所での改行"を避けるには、改行せずに印刷されるように設定するしかないと思います。 Excelのデータの縦横比は印刷の際にも反映されます。横幅を1ページに印刷し、縦方向は引き伸ばして高さいっぱいに印刷したら読みにくいと思われますが、それをお望みなのですか?
K.T_build

2017/09/21 04:35 編集

目標は、「デスクトップでexcel ⇒ pdf に変換したときと同じ精度で変換したい」になります。 いまのコマンドラインでの変換では、縦幅に差がありすぎるため、それが現時点での課題になります。   ※先ほど、質問文を編集し、目標物(原本のデスクトップでの変換)を追記しました。
guest

回答3

0

Spire.XLS for.NETはどうですか。公式サイトには無料バージョンがあります。
このサイトには関連コードがあります
https://jp.e-iceblue.com/tutorials/net/spire-xls-net/xls-net-conversion/c-how-to-convert-excel-documents-to-pdf-files.html

投稿2022/08/31 02:40

Gia2apo

総合スコア62

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

自己解決

質問の当初の問題であった、変なところで改行される問題に関しては、
coco_bauer さんのご指摘により解決されました。
そのため、一旦クローズさせていただき、現在の質問を新たに挙げさせて頂きます。

投稿2017/10/01 23:58

編集2017/10/01 23:59
K.T_build

総合スコア29

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

OpenXMLを使うのはどうなんでしょう?
https://github.com/PHPOffice/PHPExcel

投稿2017/09/22 03:08

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問