Calcのhyperlinkでjpgファイルを開きたい

Mac 11.4 下でのlibreoffice 7.0.6.2 calc hyperlink で、指示通りに目的写真ファイルを指定してリンク先につなげようとすると、“file:///Users/・・・/Pictures/・・・/・・・.JPG” is not an absolute URL that can be passed to an external application to open it." という警告が出て、つながりません。目的の写真ファイルをJPGからPNGに変換して保存し、それを指定するとリンクがひらけました。

Mac 10.7.5でlibreoffice 4.3.7.2を使っているときは、calcセル内に Insert>hyperlinkとして、そのあと指示通りに目的写真ファイルを指定すれば、目的のJPG写真ファイルをプレビューで開くことができました。

旧MacBook Air OS 10.10.5 のlibreoffice 6.4.6.2 では、JPG fileにはリンクできず、PNG file にはつながりました。

旧MacBook Air OS 10.10.5 のApache Open Office 4.1.10 では、JPG にも PNG にもつながりました。

どうやら、libreoffice version v6とv7は、v4から改訂されたためJPGファイルにつながらなくなったようです。全ての写真ファイルをPNGに変換すればできると思いますが、これまで2000枚以上撮ってきた写真ファイルを変換するのは大変で、しかも写真ファイルのサイズは2倍以上になります。

JPGファイルのまま、libreofficeのhyperlink機能で必要な時に参照できる方法はないでしょうか?長文となり恐縮ですが、よろしくお願いいたします。

指示通りに目的写真ファイルを指定してリンク先につなげようとすると

これの意味がわからないので、もう少し詳しく書いていただけますか?

メニューの挿入ハイパーリンクを開いて、URLにfile:///Users/hoge/Pictures/hoge.jpg(例です)と入力した、ということでしょうか?

“file:///Users/・・・/Pictures/・・・/・・・.JPG” is not an absolute URL that can be passed to an external application to open it."

メッセージを読むとパスが間違っているような気がしました。

ご回答ありがとうございます。

メニューの挿入→ハイパーリンクを開いて、URLにfile:///Users/hoge/Pictures/hoge.jpg(例です)と入力した、・・・

その通りです。パスは、個人情報が出てくるので中黒ドットに変えました。警告をコピーペーストして、中黒ドットに変更しました。
URL入力は、実際には、ハイパーリンクを開いて、documentをクリックして、窓に出て来たファイル群から目的ファイルをクリックしました。
URLの表記を理解しておらず、クリックでできる範囲の操作でした。

みてみますと、セル内にブルーのフォントで示されているフォルダー名/ファイル名は、個別ファイル名以外PNGとJPGは同じようなので、ファイルの中身の違いで繋がったり繋がらなかったりするようです。

これから一時退席しますので、しばらく失礼いたします。

重ねてで失礼します。
実は、2016年Aug 18のOpenOffice Forum で、同じような質問がありました。
Hyperlink to a .jpg image not allowed in Calc?という質問で、解決したというものです。
その回答は、Is it possible that you don’t have a default application for handling .jpg? というものでした。
これをチェックして解決したようです。

そのようなことはあるかもと、私も.JPGファイルの情報を見ましたが、プレビューで開くとなっておりましたので、当てはまらないように思います。
さらに、OpenOffice4.1.10では、jpg とpngどちらも開きますので、プレビューの問題ではないと思います。
やはり、Libreofficeの問題ではないかと考え、こちらに質問させていただいた次第です。

再び重ねてで失礼します。
ハイパーリンク先がiCloud Driveのjpgファイルだと、プレビューで開くようです。

Hyperlink > Document クリックして、Document, Path: の右のボックス型ボタンをクリック > iCloud Drive の中からjpgファイルを選んでセルに入力すると、プレビューで開きました。

Local hddのファイルだと開かないようです。
ネットに繋げないときも、iMac単体でcalcから写真を見たいのですけど。

ハイパーリンクするドキュメントが、PDF、rft、tiffファイルだと、開きました。
これまで試したところでは、jpgファイルだけが開けません。
なぜjpgファイルなのか、具体的にどことはわかりませんが、bugなのでしょうか?

LibreOffice The Document Foundation ホームページで、hyperlink jpgで検索すると、いくつかヒットした中で、次のような記事がありました。ハイパーリンクのリンク先のファイルを開く(“open”)システムユーティリティーにexecutables (executable filesでしょうか?)を渡すのをブロックする拒否リストdeny listがあり、LibreOffice >= 7.0.6 or >= 7.1.3ではdeny list extensionをブロックして解決したというものらしいです。(訳が間違っていたらすみません)

わたくしが使ったのは、libreoffice 7.0.6.2であり、直接は当てはまらないかと思いますが、ここに出てくるdeny listが、リンク先がjogファイルだと開かないということに関係しているのでしょうか?この辺りのことをご存知の方がおられましたら、ご教授お願いいたします。

ーーー記事原文の一部ーーー
CVE-2021-25632
Title: fileloc extension added to macOS executable denylist

Announced: May 18, 2021

Fixed in: LibreOffice 7.0.6/7.1.3

Description:

LibreOffice has a feature where hyperlinks in a document can be activated by CTRL+click. Under macOS the link can be passed to the system ‘open’ utility for handling. LibreOffice contains a denylist of extensions that it blocks from passing to ‘open’ to avoid attempting to launch executables.

In the LibreOffice 7-1 series in versions prior to 7.1.3, and in the 7-0 series in versions prior to 7.0.6, t

Big sur(11.4)のLibreOffice 7.1.5で試しましたが、普通に開けました。

試した方法は、Calcで挿入ハイパーリンクを開いて、文書タブにあるパスからjpgファイルを指定しました。リンクをcmdを押しながらクリックすると何もなくプレビューが開きました。

7.0.6はサポート終了していますし、7.1.5にアップデートして試してみるのはいかがでしょうか?

nogajun様

ありがとうございます。
そうでしたか。使いこなすのに自信がないので、安全とされるv 7.06をインストールしました。
今Big sur 機種が手元にないので、今日午後か明日、v7.1.5をインストールします。

たびたびコメントを投稿し、申し訳ありません。
これで、iMac単体で、これまでの写真ファイルを使え、これからも同じように写真を追加できます。
深謝です。

Mac 11.4にLibreOffice 7.1.5.2をインストールして、calcで、挿入→ハイパーリンクを開いて、jpgファイルを指定しました。しかし、やはり以前と同じ警告が出てプレビューが開きません。今回は、PDFファイルも開きません。rtfとpngは開きました。

ハイパーリンクでなければ、jpgファイルはプレビューで問題なく開きます。

ーーー追加ですーーー

iCloud DriveのPDFは開きますが、ローカルディスクのPDFは開きません。
jpgは、iCloud Driveもローカルディスクも開きません。
ローカルディスクのjpgファイルにリンクしようとすると、次の表示が出ます。

“file:///Users/…/Pictures/…/・・・.JPG” cannot be passed to an external application to open it (e.g., it might not be an absolute URL, or might denote no existing file).

英語版を検索をしたらこういうのがでてきました。

セキュリティ上の理由でファイルの実行可能ビットが有効になっているとハイパーリンクから開けなくなっているそうです(当然というか、リンク先が悪意のあるプログラムに置き換えられてたら一発で終わりですからね)。

試しにjpgファイルの実行可能ビットをオンにしてクリックしたら同じエラーが出ました。なので、原因はこれだと思います。
ターミナルを開いて、写真のあるフォルダーまで移動してパーミッションを確認してみてください。

1 Like

nogajun様

ありがとうございます。原因についてのご説明は、納得です。

ターミナルを開いて、写真のあるフォルダーまで移動してパーミッションを確認

恐縮ですが、ここの手順をくわしく(作業の流れ)をお教え下さらないでしょうか。
実は、ターミナルというのもどこかで見たことがあるな程度しか知らず、Launchpadから開いてみましたが、何をどうしていいのかわかりません。;

ターミナルの使い方はLibreOfficeとは関係なくUnixコマンドの使い方なので、詳しいことは「mac ターミナル パーミッション」で検索してください。

ターミナルを開いたら下のコマンドを1行ずつ入力してください。コマンドの最後ではreturnキーを押してください。

cd (ここまで入力したらFinderから写真のフォルダーをドラッグ・アンド・ドロップ)
ls -la

するとファイル名が下のように表示されます。表示されたファイル名の左側にrwxと並んでますが、これがファイルのパーミッション(権限)です。ここにxがあると実行可能ビットが立ってるという印なのでLibreOfficeでエラーになります。

-rwxr-x-rx@ 1 user staff  77456  7 23 11:14 test.jpg

jpgファイルは通常はこんな感じのはずです。xが入ってないのでLibreOfficeから開けます。

-rw-r--r--@ 1 user staff 258189  7 23 19:56 test2.jpg

ファイルのパーミッションはchmodコマンドで直せますが、一発で修正する方法はどこにどのファイルがあるかわからないと書けないし、下手に書いて間違えるとアクセス不能になってしまうので、自分ができるのはここまでですね。

nomajun様
ありがとうございます。
教えていただいたように検索して、必要なコマンドを学んで、直してみます。

ターミナルを起動して、灰色の入力桝にcd (Picturesドラッグ&ドロップ) ls としても、No such file or directory と出て、中が見えません。cd無しで、lsだけ入力すると、Desktop はじめ Picturesなどのフォルダー名が列記されます。
まだ、基本的なところで間違って入力しているみたいです。もっとコマンドの入力の仕方を学んで試みます。

nomajun様

Fileのパーミッションを確認できました。

cdのあとに半角スペースをいれなかったのが原因だったようです。Picturesフォルダーをドラッグ&ドロップして、ls -laでファイルのパーミッションを確認しました。

デジカメの写真JPGファイルは、全て-rwxrwxrwxとxが入っていて、説明してくださったように、ハイパーリンクで開けません。旧いエプソンスキャナーのファイルは、jpegで-rw———-となっており、リンクで開くことができました。JPGファイルをハイパーリンクで開くことが出来ないのがLibreOfficeのSecurity仕様であれば、仕方ありません。

chmodを使って元ファイルのパーミッションを変更するのは、自分には荷が勝ちすぎるように思います。元の写真ファイルには手を加えず、複製ファイルをプレビューでPNGに変換し、参照用のフォルダーに格納してハイパーリンクにつなげようと思います。せっかく実行可能ビットを回避する方法を教えてくださったのに申し訳ありません。

なお、LibreOffice 5.2.5.1は、JPGファイルをハイパーリンクで開けることができました。v6以降ができないようです。