12

.psdを読み込んでから、他の変更を加えて個々のレイヤーをファイルとして保存できるように、psdファイル形式のドキュメントを見つけようとしています。誰かが.psdファイル形式のドキュメントを知っていますか?(参考までに、これをC ++で記述します)

C ++で.psdファイルをロードするコード例がある場合は、それらをリンクしていただければ幸いです。

(これを「XXXソフトウェアを使うだけ」に変えないでください。これは宿題やそれに関連するものではありません。これは楽しいプロジェクトになると思うのでやっています。投稿を停止してもらいますこれが発生した場合は投票しました。)

4

5 に答える 5

42

GitHubにはいくつかの Objective-C コードもあり(C++ のバックグラウンドを持つ人なら誰でも簡単に理解できるはずです)、これもこの gem のソースであり、うまくまとめられているように見えます。

ここで、Adobe PSD 形式についてお話ししたいと思います。PSD は適切な形式ではありません。PSD は悪いフォーマットではありません。それをそのように呼ぶことは、PCX や JPEG などの他の悪いフォーマットへの侮辱になります。いいえ、PSD はひどいフォーマットです。このコードに数週間取り組んできたので、PSD に対する私の憎しみは、100 万個の太陽の激しい情熱で燃える激しい炎に成長しました。
何かを行うのに 2 つの異なる方法がある場合、PSD は異なる場所で両方を行います。それから、正気な人間が思いつくことのないさらに 3 つの方法を作成し、それらも実行します。PSD は、矛盾を芸術形式にします。たとえば、なぜこれらの特定のチャンクを 4 バイトにアラインする必要があり、このアラインメントをすべきでないと突然決定したのですか?サイズに含まれますか?他の場所の他のチャンクは、整列されていないか、サイズに含まれる整列に整列されています。ただし、ここでは含まれていません。これら 3 つの動作のいずれかで問題ありません。正気のフォーマットは、いずれかを選択します。もちろん、PSD は 3 つすべてを使用します。
PSD ファイルからデータを取得しようとすることは、58 歳の誕生日に淡水サメに襲われて亡くなった風変わりな年老いた叔父の屋根裏部屋で何かを見つけようとするようなものです。最後の詳細は比喩としては重要ではないかもしれませんが、この時点で、私は多くの時間を費やして、このファイル形式のルーブ・ゴールドバーグの責任者たちの面白い運命を想像しています。
以前、PSD ファイル形式の最新の仕様を把握しようとしました。これを行うには、この神聖な本を送ることを検討してもらうために、彼らに申請する許可を申請する必要がありました. これには、おそらく血で署名された何らかの文書のコピーをファックスで送信する必要がありました。彼らがこの忌まわしきものを作り出したことを非常に恥じているため、彼らがこのプロセスを非常に困難にしているとしか思えません。もちろん、私はこの手順を実行するほどだまされやすいわけではありませんでしたが、そうしていたら、仕様のすべてのページを印刷して、すべてに火をつけていたでしょう。それが私の力の範囲内であれば、私はそれらの仕様のすべてのコピーを収集し、それらを宇宙船で太陽に直接発射します.

PSD は私のお気に入りのファイル形式ではありません。

あなたが警告されているように。:)

于 2011-03-18T17:53:09.467 に答える
11

これは楽しいプロジェクトではありません。.psd形式は大きいです。これには、Adobeが長年にわたってPhotoshopに導入したすべての機能が組み込まれています。

仕様はアドビから入手できると思いますが、一般に公開するだけではありません。あなたは彼らに連絡し、最初にいくつかのフープを飛び越える必要があります。

于 2011-03-18T17:38:48.977 に答える
8

Adobe が作成した PSD ファイル形式の仕様はこちらです。

http://www.adobe.com/devnet-apps/photoshop/fileformatashtml/

最終更新日: 2012 年 6 月。私が知る限り、これはPSDファイル形式に関する入手可能な最良のソースですが、間違いはほとんどありません.

まず、PSD をブロックに分割することから始めることをお勧めします。

楽しみ!

于 2012-08-29T02:47:41.040 に答える
0

MyPSD::CPSD クラスは、Adobe の Photoshop ネイティブ形式で保存された画像をロードできる C++ クラスです。 http://www.codeproject.com/Articles/10398/Import-Adobe-Photoshop-psd-images

于 2016-08-01T03:59:54.040 に答える
0

MolecularMatters psd_sdk は、インスピレーションを形にするのに適したライブラリのようです: https://github.com/MolecularMatters/psd_sdk

.psd ファイルなどからレイヤーを読み取ることができます。

于 2020-04-12T13:28:47.820 に答える