HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2010
0220
‍hamyuujpegで保存すると変色してしまいます6解決


‍hamyuu

リンク

2010/2/20(Sat) 15:41:35|NO.30762

画面をjpegで保存するものを作っていて
hspcvを使ってjpegで保存したんですが、
保存した画像を見てみると色落ち(?)しています・・・
これって自分だけじゃないですよね?
変色しないようにjpegで保存するにはどうしたらいいですか?



この記事に返信する


inovia

リンク

2010/2/20(Sat) 16:35:21|NO.30763


cvsave "filename",p1,p2

p2 に 100 を指定すればいちばん綺麗になると思いますが、
JPEG形式は写真向きのフォーマットのなので、
ゲームやアニメ等のイラストなどはPNG形式で保存した方がいいかもしれません。

JPEG形式で劣化してしまうのは仕方がないことです。
(メリハリのある画像は特にそうです。)



リンク

2010/2/20(Sat) 16:36:35|NO.30764

綺麗に保存したいならjpegは向かないのでは



‍hamyuu

リンク

2010/2/20(Sat) 17:26:52|NO.30765

返答ありがとうございます。
確かにJPEGの画質は低いですが、
保存した画像は後ほどアップロードするのでファイルサイズを
できるかぎり小さくしたかったんです。(512KB以下じゃないとアップロードできないんで・・)
変色さえしなければ十分綺麗なんです。
何か方法はありませんか?


onexit gosub*ext:width ,,5,5 #include "hspcv.as" #uselib "gdi32.dll" //画面のコピー準備 gsel 0,-1 #cfunc CreateDC "CreateDCA" sptr,sptr,sptr,int #func DeleteDC "DeleteDC" int #func BitBlt "BitBlt" int,int,int,int,int,int,int,int,int a=CreateDC("DISPLAY", 0, 0, 0) wait 30 //画面コピー dx=ginfo(20):dy=ginfo(21):buffer 2, dx, dy BitBlt hdc,0,0,dx,dy,a,0,0,0x00CC0020 DeleteDC a gsel 2,0:cvbuffer 2,dx,dy:cvputimg 2:gsel 0,1 cvsave "test.jpg",2:title"保存前":gmode 0,640,480:gcopy 2 screen 1,,,,320,150:title"保存後":picload"test.jpg",1 stop *ext delete"test.jpg" end



荒河軒持

リンク

2010/2/20(Sat) 17:44:19|NO.30766

Jpegという形式は画質を良くすればファイルサイズが増加しファイルサイズを小さくすれば劣化すると言う諸刃の剣です。
Jpegにこだわるのであれば多少の画質の劣化は目を瞑るべきでしょう。



undefined

リンク

2010/2/20(Sat) 17:59:42|NO.30767

サイズの大きい画像は縮小してはどうでしょうか?



‍hamyuu

リンク

2010/2/20(Sat) 18:16:23|NO.30768

画像の大きさのこと忘れてました。
少し縮小してPNGで保存する事にします。
お二人ともありがとうございました。



ONION software Copyright 1997-2023(c) All rights reserved.