人気ブログランキング | 話題のタグを見る
Visual C#, JPEG, Photoshop elements 6, 不明または無効なJPEGマーカー
さっき、visual C#にて加工した画像をjpeg形式で保存し、phtoshop elements 6で開こうとすると
要求された操作を完了できません。不明または無効なJPEGマーカーが見つかりました
という、エラーダイアログが表示されて開かない現象が生じた。

1.this.saveFileDialog1.DefaultExt = "jpg";として、標準の保存拡張子を「jpg」にしている。(開いている元画像はjpeg画像)
2.windowsでの標準の「画像とFaxビューアー」や、同じphotoshop elementsでもver.2等では問題なく開くことができる。
3.読み込み後、処理せずに保存すると、問題なく開くことができる。(jpeg画像を読み込んで、そのまま保存)

で、よくよく調べてみると、保存されたファイルの拡張子は「jpg」であるにもかかわらず、内部形式は「png」であることが分かった
どうやら、「画像とFaxビューアー」や、photoshop elements 2.0等では、拡張子にかかわらず、pngファイルとして読み込んでいたようだ。(C#にて加工操作すると自動的に?内部でpng形式になる?)

visual C#にて
this.pictureBox1.Image.Save(this.saveFileDialog1.FileName);
の部分を、
this.pictureBox1.Image.Save(this.saveFileDialog1.FileName
   ,System.Drawing.Imaging.ImageFormat.Jpeg);
のように、明示的にJpeg形式のフォーマットを使用するように変更すると、問題なく開くことがわかった。

※08/04/22 04:10 追加
visual studio .net系にて、上記「間違いやすいデフォルト」が散在しているようである。
たとえば、
StreamReader sr = new StreamReader(args[0],Encoding.Default);
StreamWriter sw = new StreamWriter(args[1], false, Encoding.Default);

にて、
StreamReader sr = new StreamReader(args[0]);
StreamWriter sw = new StreamWriter(args[1], false);

と、Encoding部分をデフォルトにした場合に、違いがある。
Encoding.Default

は、一般的な日本語Windowsでは、shift-JISであるが、Encoding.○○○の○○○の部分には、shift-JISに相当するものがない(あるにはあるが、通常のマニュアルレベルでは検索困難で、明示的ではない)
参照
DOBON.NET > プログラミング道 > .NET Tips > ファイル、フォルダ
http://dobon.net/vb/dotnet/file/readfile.html
Encoding部分を記述しない(デフォルト設定にする)と、UTF-8が採用される。
ようするにDefaultという記述の意味するところと、省略時のデフォルトの概念が交錯しやすく、ミスを誘引する(医療現場の言葉で言えば、インシデントを誘発しやすい)環境といえる。

by kisugi_jinen | 2007-11-03 19:16 | program。。。 | Trackback | Comments(0)
<< ぱそこんキッズキー。。。 「こころ」の認識(存在)。。。... >>



「ともし火に我もむかはず燈(ともしび)もわれにむかはず己がまにまに」(光厳院) --- 厳然とした境界を越え得ぬとき、その上でなお、越えうるものがあるとすれば、それは「情」である。

by kisugi_jinen
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
検索
カテゴリ
最新の記事
お知らせとリンク。。。
お知らせ
●コメントスパム対策のため、承認制に変更しました(2010.09.29)
●トラックバックのリンクチェック機能を追加しました。excite以外からのトラックバックをされる場合、当該記事へのリンクを埋め込んでください。
リンク
ゲストブック
---Yahooジオシティーズ終了に伴い、利用できなくなっています。
来生自然のホームページ
---Yahooジオシティーズ終了に伴い、利用できなくなっています。
鉄鼠
---「考える」ということに向き合う。。。
Genxx.blog
移転後http://blog.genxx.com/
---「情」を含めて専門的な立場から「こころ」を模索し続けるGenさんのブログ。。。
研幾堂
---山下裕嗣氏による哲学のサイト。以前、形而上学についてやりとりさせていただいた。
記事ランキング
最新のコメント
グローバル大納言さま ..
by kisugi_jinen at 00:13
最近はChatGPTや生..
by グローバル大納言 at 09:12
花の名前も、花言葉も知ら..
by kisugi_jinen at 07:26
> hatekatsu卿..
by kisugi_jinen at 10:05
ふるさととは根源的で絶大..
by hatekatsu卿 at 11:18
最新のトラックバック
以前の記事
フォロー中のブログ
外部リンク
ブログパーツ
ライフログ
ファン
ブログジャンル
画像一覧