Skip to content

原文(日本語に翻訳)

  • Bashのdata-URL出力による画像のサイズ超過と切り詰めを修正

原文(英語)

  • Fixed oversized and truncated images from Bash data-URL output

概要

Bashコマンドからdata-URL形式で画像を出力した際に、画像が過度に大きくなったり途中で切り詰められたりする問題が修正されました。以前はdata-URL形式の画像出力が正しく処理されず、表示される画像の品質や完全性に問題がありました。この修正により、Bashツールからの画像出力が適切なサイズで完全に表示されるようになります。

基本的な使い方

Bashコマンドで生成された画像がdata-URL形式で出力される場合に、正しく処理されます:

bash
# 画像をbase64エンコードしてdata-URLとして出力
echo "data:image/png;base64,$(base64 < image.png)"

実践例

グラフやチャートの出力

Pythonスクリプトで生成したグラフをdata-URLとして表示する場合:

bash
python3 -c "
import matplotlib.pyplot as plt
import io, base64

plt.figure(figsize=(8, 6))
plt.plot([1, 2, 3, 4], [1, 4, 9, 16])
plt.title('Sample Plot')

buf = io.BytesIO()
plt.savefig(buf, format='png')
buf.seek(0)
data = base64.b64encode(buf.read()).decode()
print(f'data:image/png;base64,{data}')
"

スクリーンショットの確認

開発中のUIスクリーンショットをClaude Codeで確認する場合:

bash
# スクリーンショットをdata-URL形式で表示
echo "data:image/png;base64,$(base64 < screenshot.png)"
# 修正後: 適切なサイズで完全に表示される

注意点

  • data-URL形式の画像出力は、通常のファイル読み取り(Readツール)とは異なるパスで処理されます
  • 非常に大きな画像はBashの出力サイズ制限の影響を受ける場合があります
  • 画像の表示品質は出力先(ターミナル、Desktop、VSCode)によって異なります
  • この修正はdata-URL形式(data:image/...;base64,...)の出力に特化しています

関連情報