HEICをWEBPに変換する
要約 JDeliを使えば、Javaでたった1行のコードでHEICをWEBPにネイティブ変換できます。File、InputStream、byte[]およびバッチコマンドライン変換をサポート。無料トライアルあり。
JDeliのJava画像変換ライブラリはHEICをネイティブサポートしているため、JavaおよびJava以外の言語・スクリプトからでも、HEICをWEBP画像ファイルに簡単に変換できます。
コード例を実行するには、JDeliのjarをダウンロードする必要があります。
JDeli.convert() メソッドを使えば、たった 1行 のコードでHEICをWEBPとして保存できます。
JDeli.convert(File inFile, File outFile);
JDeli.convert(File inFile, EncoderOptions encoderOptions, File outfile);
JDeli.convert(File inFile, File outfile, ImageProcessingOps imageProcessingOps);
JDeli.convert(InputStream inputStream, OutputStream outputStream, "webp");
JDeli.convert(InputStream inputStream, EncoderOptions encoderOptions, OutputStream outputStream);
JDeli.convert(InputStream inputStream, OutputStream outputStream, ImageProcessingOps imageProcessingOps);
byte[] outputData = JDeli.convert(byte[] inputData, "webp");
byte[] outputData = JDeli.convert(byte[] inputData, EncoderOptions encoderOptions);
byte[] outputData = JDeli.convert(byte[] inputData, "webp", ImageProcessingOps imageProcessingOps);
コマンドラインやbash、bat、PowerShellスクリプトから画像フォーマットを変換できます。この方法は、子プロセスを作成できる任意のプログラミング言語からJDeliを呼び出す際にも利用できます。
java -jar jdeli.jar --convert webp "inputFileOrDir" "outputDir"
フォーマット変換を個別のステップで行う必要がある場合もあります。JDeliでは、画像をBufferedImageとして読み込んだ後、任意のタイミングで書き出すことも可能です。
- HEIC画像をJavaに読み込む
BufferedImage bufferedImage = JDeli.read(new File("heicImageFile.heic"));
- 必要に応じて画像を処理する (スケール変更、シャープ化、明度調整、透かし追加など)
bufferedImage = operations.apply(BufferedImage bufferedImage); // Optional
- BufferedImageをWEBP画像ファイルとして書き出す
JDeli.write(bufferedImage, "webp", new File("webpImageFile.webp"));
クリックして展開
こんにちは、Aliciaです。私たちのYouTubeチャンネルへようこそ。今日の動画では、JavaでHEICファイルを開く方法についてご説明します。HEICファイルが何かよくわからない方は、まず私たちのYouTubeショートをご覧ください。リンクは説明欄に貼っておきます。
Java自体はHEICをサポートしていないため、追加のソフトウェアが必要になります。JDeliライブラリを使えば、HEICファイルの読み込み、書き込み、表示が可能です。では、チュートリアルを始めましょう。
まず、JDeliのトライアルページにアクセスし、メールアドレスを入力して、利用規約に同意した上でトライアルを生成してください。完了すると、入力したメールアドレス宛にメールが届きます。メールを開いて内容を確認しましょう。
メールには、あなた専用のトライアルjarへのリンクが記載されています。そのリンクをクリックするとトライアルjarのページに移動します。このページではjarのダウンロードだけでなく、さまざまな利用方法についての情報も提供されています。
まずjarをダウンロードして、独自のコードを追加していきます。ダウンロードディレクトリにJDeliのトライアルjarが保存されているのが確認できます。すべてのバージョンで共通のトライアルjarが1つ提供されています。では、これを新しいプロジェクトに追加しましょう。
プロジェクト名を付けます。私のプロジェクト名は「JDeli HEIC」にします。これでJavaプロジェクトが生成されます。今回はIntelliJを使いますが、基本的な手順は他のIDEでも同様です。
まずJavaプロジェクトにコードを追加し、次にモジュール設定に追加します。これでjarを追加できます。ダウンロードフォルダに移動するとJDeliのトライアルが見つかります。JDeliトライアルをプロジェクトに追加したので、このクラス内に記述したコードでJavaのコードを実行できるようになります。
次に、JDeliのトライアルページに戻り、HEIC用のサンプルコードを確認しましょう。このコードはファイルの読み書きに役立ちます。今回のデモでは、HEICファイルを読み込んで別の画像フォーマットとして書き出します。では、このコードを参考に独自のコードを追加していきましょう。
最初にすべてのインポートを修正する必要があります。これはJDeliをコードに追加したことによる標準的な作業です。これで問題なく動作するようになりました。次に、使用する画像を指定します。パスはわかっているので、直接入力します。これでダウンロードフォルダからファイルが読み込まれます。
いくつか修正が必要な箇所があります。また例外処理も必要なので、try-catchブロックで囲みます。今回はこの画像をJPEGファイルとして書き出します。writeメソッドを使ってJPEGとして書き出しましょう。もちろん、これらのメソッドはさまざまな画像フォーマットに対して自由に使用できます。
では、try-catchブロックに組み込みましょう。このコードは、手元にあるHEICファイルを読み込んで書き出すはずです。ちょっとした修正が必要なことに気づきましたが、もしこのような状況になっても心配いりません。修正はすぐに簡単にできます。e.printStackTrace() に変更しましょう。
コードを実行すると、フォルダの中に猫の画像ファイルが生成され、ここにLucyがいます。これで、JDeliがHEICファイルの読み込みだけでなく、複数の画像フォーマットへの書き出しもいかに簡単にできるかがおわかりいただけたと思います。
ご視聴ありがとうございました。参考になった方は、ぜひ高評価とチャンネル登録をお願いします。次回の「How to HEIC」動画の通知が届くようになります。
