全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2539
推到 Plurk!
推到 Facebook!

bmp转为黑白的JPG图片

尚未結案
guoqz
一般會員


發表:4
回覆:10
積分:2
註冊:2004-06-28

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-07-12 17:26:30 IP:61.49.xxx.xxx 未訂閱
现在有一个黑白的bmp图片,我转换为jpg后就变成彩色的了。 是否有别的方法可以转为黑白的呀。请大家不吝赐教。 我的代码如下: ####### Graphics::TBitmap *bmp = new Graphics::TBitmap; bmp->LoadFromFile(sFile); TJPEGImage *jpg = new TJPEGImage; jpg->Assign(bmp); jpg->CompressionQuality = 100; jpg->SaveToFile(tFile); delete jpg; delete bmp; ######### 是不是有一个方法可以直接存为黑白的JPG文件.
richtop
資深會員


發表:122
回覆:646
積分:468
註冊:2003-06-10

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-07-12 18:12:15 IP:211.76.xxx.xxx 未訂閱
guoqz 您好: 我嘗試用相同的方法將一張黑白的bmp圖,存成jpg格式,並沒有出現您說的狀況。 JPEG在轉換的過程中會造成失真,所以有可能會出現其他的顏色。 我的建議是: 可否先將您的黑白bmp圖變成灰階bmp圖,再進行儲存處理。因為有時看起來是黑色,但並不是真正的黑色。 希望有幫助! RichTop 敬上
guoqz
一般會員


發表:4
回覆:10
積分:2
註冊:2004-06-28

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-07-12 18:29:08 IP:61.49.xxx.xxx 未訂閱
RichTop兄你好: 黑白的bmp文件是我用程序生成的.即下面的设置: bmp->PixelFormat = pf1bit; 我刚接触,可能不太明白,不知道你所指灰階bmp圖如何实现。 还请帮忙指点,不胜感激。
richtop
資深會員


發表:122
回覆:646
積分:468
註冊:2003-06-10

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-07-12 22:07:11 IP:211.76.xxx.xxx 未訂閱
guoqz 您好: 當bmp檔案經由LoadFromFile(.)讀入時,在記憶體中就自動轉換成24-bits的格式。 而設定PixelFormat時,僅為方便以ScanLine讀取與儲存成bmp檔時,取值的參考。 將bmp轉為jpg時,設定PixelFormat倒變得沒有意義了。這可由我將同一張圖以 不同的PixelFormat格式儲存成bmp,再分別讀取並存成jpg後,其大小幾乎相同來證實。 所以建議您: 在產生您的黑白圖時,就以PixelFormat=pf24bit格式來作,或者就是您在建立時, 能精確的填入pf1bit格式的結果至bmp中,一樣能得到您要的結果。 以上是我測試後的心得,由於不曉得您到底如何產生出黑白圖,所以僅能將目前的心得提供參考, 如尚有問題,恐怕要看程式碼才能解決了。 RichTop 敬上
guoqz
一般會員


發表:4
回覆:10
積分:2
註冊:2004-06-28

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-07-13 16:22:12 IP:61.49.xxx.xxx 未訂閱
RichTop兄你好: 我也测试过了,保存到JPG的图片数据跟BMP中的一样,没有变化。 只是用系统的画图工具(MicroSoft Paint)打开,看图像属性的时候,可以看到JPG是彩色的。 它的绘图板是彩色的。能否把这个也设置成黑白的。
richtop
資深會員


發表:122
回覆:646
積分:468
註冊:2003-06-10

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-07-13 17:06:01 IP:211.76.xxx.xxx 未訂閱
我也依您的描述,做了一次。即便我硬將屬性改成黑白(圖形會出現散開點), 存檔再重新讀入,觀察其屬性仍為彩色。 或許對jpeg來說,並不存在彩色與黑白的區別。 也就是說我也沒輒了!
guoqz
一般會員


發表:4
回覆:10
積分:2
註冊:2004-06-28

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-07-13 19:12:55 IP:61.49.xxx.xxx 未訂閱
多谢RichTop兄了。 我做了几次试验好像也不可以。
系統時間:2024-05-21 1:04:51
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!