名前 題名 ▼ Mr.XRAYさん > > あと,問題は文字列の扱いですね.UTF-8 ... > > 少しやってみましたが無理があるようです. > 下の図はコードそのテストの一部です. > logo.png 画像にテキスト書き込みで,サイズ変更して別名保存します. > > > [773] [06_ファイル名が日本語のファイルをアップロード ] > http://mrxray.on.coocan.jp/Delphi/plSamples/773_Indy_FTPGetPut.htm#06 > > のように MECSUtils を使ったらと思ったけど残念 !! > ファイル名だから関係ないだろう !! > なんですが,溺れる者は何とかでして ... ハハハ. > だって, > > [ ImageMagick のコマンドラインツールで PDF を JPEG 画像に変換] > http://mrxray.on.coocan.jp/Delphi/Others/ImageMagick.htm#04 > > ではファイル名に日本語を使用してますが,動作していますから. > コマンドラインからですと UTF-8 のファイルを使用すれば処理可能 > なようですが,試していません. > > [Unicode or UTF8 Format Text] > http://www.imagemagick.org/Usage/text/#unicode > > implementation > > uses > magick_wand, > ImageMagick; > > {$R *.dfm} > > procedure TForm1.Button1Click(Sender: TObject); > var > LReadPath : UTF8String; > LWritePath : UTF8String; > Lwand : PMagickWand; > LDrawWand : PDrawingWand; > LText : UTF8String; > begin > LReadPath := ExpandFileName('logo.png'); > LWritePath := ExpandFileName('logo2.png'); > > MagickWandGenesis; > > Lwand := NewMagickWand; > LDrawWand := NewDrawingWand; > try > MagickReadImage(Lwand, PChar(LReadPath)); > > DrawSetFontSize(LDrawWand, 300); > LText := Utf8String('日本'); > MagickAnnotateImage(Lwand, LDrawWand, 150.0, 1500.0, 0.0, PChar(LText)); > MagickDrawImage(Lwand, LDrawWand); > > MagickScaleImage(Lwand, 250, 250); > > MagickWriteImage(Lwand, PChar(LWritePath)); > finally > DestroyMagickWand(Lwand); > DestroyDrawingWand(LDrawWand); > end; > end; > > > 最初の図が「日本」という文字列を描画したもの > 次の図は「Hello!」という文字列を描画した結果 GIF,JPEG,PNG画像ファイル及びLZH,ZIPファイルをアップロードできます.600 x 1200 ピクセルを超える画像は縮小表示されます(画像クリックで拡大表示). (上限122000(120k)バイト) 削除キー Link