掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
PNG-Info (ID:151459)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
低空飛行しながら車輪の再発明的なことが大好きな私ですm(_ _)m PNG-Info を取得するのは Python で数行で出来たのですが Delphi でやってみようとして行き詰まってしまいました 最初 TMemoryStream で1バイトずつ読み込んでいたのですが TPngImage が TChunk で分かれていることを(今更)知り TChunktEXt を使いましたが日本語が入っているとアドレス違反が起きます (pngimage.pas の中の Text が AnsiString で扱われているから?) そこで初心に戻り ChunktEXt 領域だけを取り出し System.Move するとエラーも出ず日本語も化けることなく取り出せました (ここまでは1バイトずつ読み込んでいた時と同じ結果でした) しかし「é」の様なアクセント文字が化けてしまいます 参照画像→https://files.catbox.moe/v9gotm.png 「Negative prompt: 3D, CGI, render, photo, text, watermark, low-quality, signature, moiré」 その部分は本来「C3 A9」になると思うのですが自分のコードで読んでもバイナリエディタ「edbin」で読んでも「E9」です Delphi2009 だからか?と Delphi 11 CE でも試しましたが同じでした Pythonプログラムや巷にあるウェブのPNG-Infoサービスでは問題なく表示出来ているので私の読み込み方が間違っているとは思うのですが 何かヒントがあればお教えください
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.