スクリーンショットの色がAffinity上で変わってしまう問題

Affinityスクリーンショット変色問題

PCやMacでグラフィックデザインといえばadobeが有名ですが、趣味で使うには利用料が高額ですよね。
そこで日曜大工ならぬ日曜デザイナーにも優しい価格、しかも買切りのAffinity DesignerやAffinity Photoの出番です。IllustratorやPhotoshopの代替とも言われていて高機能。私もMac版とiPad版の両方とも使っています。

先日、iMacでAffinityDesignerのドキュメントにスクリーンショットを貼り付けた時に色が変わることに気がつきました。原因と回避方法がわかりましたので共有したいと思います。

まず、私の環境です。

  • iMac  27inch 2017 / 4.2GHz core i7 / RadeonPro 580
  • Affinity Photo ver1.6.7
  • Affinity Designer ver1.6.1

iMacで撮ったスクリーンショットをAffinityDesignerのドキュメントにペーストしたら色がおかしかった。

何が起きたか?

その時はAffinityDesignerで作業をしていて、ネットで見つけた画像の色がとても良かったので参考にしようとスクリーンショットを撮ってとりあえずAffinityDesignのドキュメントにペーストしました。

スクリーンショットはMacの機能で
shift + command + control +4
を使って欲しいところをキャプチャしてクリップボードに保存して、そのままAffinityDesignerのドキュメントの上に
command + V
で貼り付けました。

そして色選択ツールで色を拾おうとしたその時、「あれ?こんな色だっけ?」と思ったのです。

SafariとAffinityDesignerをモニタ上で隣に並べて見比べたら、明らかに違う。なんだか色あせた色になっていました。

サファリの画像とAffinityDesignerに貼り付けたスクリーンショット

違うよ、こんな色が欲しかったんじゃない。

AffinityDesignerの「クリップボードから新規作成」でドキュメントを作っても、スクリーンショットをクリップボードに入れないでファイルに保存してからAffinityDesignerに読み込んでも結果は同じです。

試しに画像をダウンロードして貼り付けたら、色の変化は起こらず、思ってた色が再現されていました。どうやらスクリーンショット周りに何かありそうです。
欲しかった色は手に入ったのですが、なんか納得がいかず色々調べてみました。

調べたこと

とりあえず一通りググってみたものの同じような現象に触れた記事には出会えませんでした。

仕方ないのでスクリーンショットに問題があるのか、AffityDesignerに問題があるのかを切り分けようと思い、iMacで撮ったスクリーンショットを色んなアプリに貼り付けてみました。

まずはいつもスクリーンショットを貼り付けているevernote。元画像とスクリーンショットをこんなにちゃんと見比べたことはなかったけど、色の変色はなく、問題なし。ちなみにここでの色の変化がないというのは、私の目で見て色の違いがわからなかった、という程度です。

excelにも貼り付けてみました。こちらも色の変化はなく、正常に色が再現されているように見えます。

次はAffinityPhoto。こちらはやっぱり色の変色があり、元画像より貼り付けたスクリーンショットの方が褪せて見えます。今度は色選択ツールで元画像とスクリーンショットをペーストしたものを調べましたが、やはり色が変わっています。

そしてグラフィック系アプリのGraphic。こちらは色の変化はなく、貼り付けたスクリーンショットの色は正常に再現されていました。

というわけでスクリーンショットの貼り付け実験の結果をまとめると、こうなります。

試してみたアプリ一覧
怪しい。Affinityが。

そこで、MacBookPro early2013上のAffinityPhotoやAffinityDesignerでも試してみました。

が、この問題は再現せず。

iMac上で、AffinityPhotoとAffinityDesignerだけで起こることがわかりました。

仕方なくAffinityのフォーラム(英語)に特攻

そもそもAffinityの情報ってadobe製品に比べたら少ないです。日本語での情報となるとなおさらです。
一応英語サイトもgoogle翻訳にお世話になりながら調べてみましたが解決出ませんでした。

とはいえスクリーンショットはよく使うので、グラフィック系のソフトにスクリーンショットを貼り付けたら色が変わっちゃうなんて困ります。意を決してAffinityのフォーラムに突撃してみました。
https://forum.affinity.serif.com/index.php?/topic/84488-color-change-when-paste-screenshots-on-imac2017/&
片言の英語で、しかも説明してもらったライブラリフォルダも見当違いのところを探してたり、さらには回答者同士が言い合いを始めたりと、英語得意でもない私にはなかなかハードでしたが、無事に問題の回避方法がわかりました。

「解決」じゃなくて「回避」と言っているのには理由があって、私にはほぼ「解決」なんですけど、人によってはその方法取れないよ〜ってこともあるんじゃないかと思います。

フォーラムではその後、本件を元にバグ報告のトピックが立てられたのでいつか完全解決することを期待したいところです。

問題の原因と回避

回避策はiMacのディスプレイのプロファイルにあり!

iMacに限らず、Macにはディスプレイプロファイルというのがあって、そのディスプレイで最適な色が表現できるように出荷時にプロファイルが設定されています。
また、設定で出荷時のプロファイルではないプロファイルも色々選べるようになっています。

ディスプレイプロファイルを見るにはシステム環境設定からディスプレイ -> カラーを見るとわかります。
iMacの人はデフォルトでは一番上の「iMac」というのに設定されていて、それがiMacのディスプレイで最適な色が表現できるとappleが設定したものだということです。

ディスプレイプロファイル設定画面

私もカラーマネジメントはよくわかっていないので、デフォルト設定の「iMac」になっていましたが、カラーマネジメントに詳しい方は上記以外が設定されていることもあると思います。

問題はこの「iMac」のカラープロファイルが置いてあるフォルダに別のカラープロファイルがある場合に生じるようです。

カラープロファイルのあるフォルダは/ライブラリ/ColorSync/Profiles/Displayにあります。Libraryがわからない方はFinderのメニューの移動からコンピュータを選び、表示されたアイコンのMacintoshHDの中にあるライブラリです。(移動メニューをoption押しながらクリックして出てくるライブラリではないので注意)

ここに”iMac******.icc”というファイルがあるはずなのですが、私の場合このフォルダ内に”DELL*****.icc”というファイルも見つかりました。

DisplaysフォルダのDELL***.icc

このDELLっていうのには身に覚えがあります。半年くらい前にサブディスプレイにしようとiMacに繋いだのがDELLのディスプレイでした。ファイルの作成日からみてもその時に自動生成されたのでしょう。とにかく、今はこのディスプレイを繋いでないし、もう繋ぐこともないので私にはこのファイルは不要です。

そして、フォーラムで教えてもらった通り、このファイルを削除してAffinityPhotoやAffinityDesignerを再起動したら、一連の問題は発生しなくなりました。iMacで撮ったスクリーンショットはAffinityPhotoやAffinityDesigner上で正しい色で再現されるようになりました。

なお、この作業を実施する時はバックアップを取った方が無難です。システムへの変更になるため、パスワードを要求されます。また、間違ってiMac****.iccを削除してしまうことの無いように細心の注意を払ってください!

私はこの方法で問題を回避できましたが、カラープロファイルのことを完全に理解できていないので、この手順に従って問題が起きても責任を負いかねます。

推定される原因

Macで撮ったスクリーンショットにはそのスクリーンショットが撮られたディスプレイのプロファイル情報が付与されています。

で、どうやらAffinityでそのスクリーンショットを開く時に、スクリーンショットに付与されたプロファイルを元に色を再現するらしいです。

そしてその時に、先ほどの/ライブラリ/ColorSync/Profiles/Display/にiMac****.icc と別のカラープロファイルが存在する時、私の例で言うとDELL****.iccが存在すると、Affinityが混乱して色が変わってしまうということみたいです。

Graphicなど他のアプリでは発生しないことを考えると、Affinityのバグなのかもしれません。

ただし、フォーラムの中の人でもiMac2017で同じ条件にしてもスクリーンショットをAffinityDesignerやAffinityPhotoに貼り付けて色が変わる現象が再現しない人もいたため、本当にそれだけが原因で起きている問題なのかはちょっと疑問です。

しかし私の場合は/ライブラリ/ColorSync/Profiles/Display/のDELL****.iccを削除してからAffinityPhotoを再起動したら問題が起こらなくなり、もう一度DELL****.iccをフォルダに戻してからAffinityPhotoを再起動すると問題が再現したので、このDELL****.iccの存在が問題に関係していることは間違いなさそうです。

またもう一つの実験として、/ライブラリ/ColorSync/Profiles/Display/にDELL****.iccが無い状態でスクリーンショットを撮り、/ライブラリ/ColorSync/Profiles/Display/にDELL****.iccを戻してAffinityPhotoに貼り付けるとやはり色が変わってしまったので、色の変化はスクリーンショットを撮った時ではなく、スクリーンショットがAffinityPhotoもしくはAffinityDesignerに追加される時に起こっているようです。

完全解決では無い

今回は私がサブディスプレイとして使っていたDELLのディスプレイをもう使うつもりがないので、問題になっているプロファイルを消すという方法で問題回避ができましたが、普通にサブディスプレイを使っている人にこの問題が起きたらこの回避策は取れません。
他の回避策としてシステム環境設定からディスプレイ -> カラーのディスプレイプロファイルを「iMac 」から他のプロファイル、例えば「sRBG IEC61966-2.1」などに変更することで、スクリーンショットをAffinity製品に貼り付けた時の色の変化が起きないようにすることはできますが、これはiMacのディスプレイの性能を下げて使うことになるのでおすすめできません。

そんな訳で、同じ問題が起きていてサブディスプレイも必要な人は、Affinityのアップデートでこの問題が解決されるのを待つしかなさそうです。

まとめ

今回は私が直面したiMacで撮ったスクリーンショットをAffinityPhotoやAffinityDesignerに読み込んだ時に色が変わってしまう問題について、私が調べた回避方法を紹介しました。
なかなか情報がなかったので同じ症状で困ってる人の参考になったら嬉しいです。