C#Bitmap裁剪圖片後顯示在pictureBox內,形成圖片移動效果
使用者介面大作業,選擇時區時將地圖上該時區顯示在圖片中間。
就是這樣,地圖是720*180的,含有兩個世界地圖,足夠剪裁出時區在中間的360*180圖,所以pictureBox是360*180的。
這是複製剪裁圖片的函式,
private void Clone_map(/*PaintEventArgs e,*/int X)
{
Bitmap myBitmap = new Bitmap("D:/C#Projects/8-image/timezone_map.GIF");//myBitmap複製過來
//之前這裡寫的是<span style="font-family: Arial, Helvetica, sans-serif;">Bitmap myBitmap = new Bitmap(pictureBox_map.Image);結果只能剪裁一次,再選擇時區時就記憶體不足,是cloneRect超出原圖範圍,</span>
<span style="font-family: Arial, Helvetica, sans-serif;">//我猜原因是pictureBo裡的圖片被剪後就變成了被剪後的圖,是360*180的圖了不再是720*180,所以超出範圍了,不知道怎麼改才行就改成直接從資料夾匯入了</span>
<span style="font-family:Arial, Helvetica, sans-serif;">//如果依然用從pictureBox裡匯入的話改怎麼改,希望知道的朋友指導下 </span> RectangleF cloneRect = new RectangleF(180+X, 0, 360, 170);//從0+X處開始剪裁360*180的圖 System.Drawing.Imaging.PixelFormat format =myBitmap.PixelFormat;//獲取myBitmap的PixelFormat,記為format //MessageBox.Show(X.ToString());//測試format符合要求 Bitmap cloneBitmap = myBitmap.Clone(cloneRect, format);//複製cloneRect所表示矩形框內的圖,常提示記憶體不足 this.pictureBox_map.SizeMode = PictureBoxSizeMode.CenterImage;//設定顯示模式 this.pictureBox_map.Image = Image.FromHbitmap(cloneBitmap.GetHbitmap()); //this.pictureBox_map.SizeMode = PictureBoxSizeMode.CenterImage;//設定顯示模式 myBitmap.Dispose(); cloneBitmap.Dispose(); }
在選擇時區後呼叫
private void comboBox_SelectedIndexChanged(object sender, EventArgs e)//comboBox選擇時區時 { label_tz.Text = comboBox.Text;//tab1頁面下顯示所選時區 button_OK.Focus(); for (i = 0; i < 49; i++)//找出所選timezone對應的offset { if (timezone[i] == comboBox.Text) { s = offset[i]; int screenOffset = int.Parse(s); int screenOffsetX = screenOffset / 4; // MessageBox.Show(screenOffsetX.ToString());//檢測screenOffsetX的值是否和我手動計算的一致,可忽略 Clone_map(screenOffsetX); break; } }
//記錄時區名的陣列
string[] timezone ={"(GMT -12:00) Eniwetok, Kwajalein","(GMT -11:00) Midway Island, Samoa",
"(GMT -10:00) Hawaii","(GMT -09:00) Alaska",
"(GMT -08:00) Pacific Time (US and Canada); Tijuana:","(GMT -07:00) Arizona",
"(GMT -07:00) Mountain Time (US and Canada)","(GMT -06:00) Central Time (US and Canada)",
"(GMT -06:00) Mexico City, Tegucigalp","(GMT -06:00) Saskatchewan",
"(GMT -05:00) Bogota, Lima","(GMT -05:00) Eastern Time (US and Canada)",
"(GMT -05:00) Indiana (East)","(GMT -04:00) Atlantic Time (Canada)",
"(GMT -04:00) Caracas, La Paz","(GMT -03:30) Newfoundland",
"(GMT -03:00) Brasilia","(GMT -03:00) Buenos Aires, Georgetown",
"(GMT -02:00) Mid-Atlantic","(GMT -01:00) Azores, Cape Verde Is.",
"(GMT +00:00) Greenwich Mean Time; Dublin, Edinburgh, London, Lisbon","(GMT +00:00) Monrovia, Casablanca",
"(GMT +01:00) Berlin, Stockhold, Rome, Bern, Brussels, Vienna","(GMT +01:00) Paris, Madrid, Amsterdam",
"(GMT +01:00) Prage, Warsaw, Budapest","(GMT +02:00) Athens, Helsinki, Istanbul",
"(GMT +02:00) Cairo","(GMT +02:00) Eastern Europe","(GMT +02:00) Harare, Pretoria",
"(GMT +02:00) Israel","(GMT +03:00) Baghdad, Kuwait, Nairobi, Riyadh",
"(GMT +03:00) Moscow, St. Petersburgh, Kazan, Volgograd","(GMT +03:00) Tehran",
"(GMT +04:00) Abu Dhabi, Muscat, Tbilisi","(GMT +04:30) Kabul",
"(GMT +05:00) Islamabad, Karachi, Ekaterinburg, Tashkent",
"(GMT +05:30) Bombay, Calcutta, Madras, New Delhi, Colombo","(GMT +06:00) Almaty, Dhaka",
"(GMT +07:00) Bangkok, Jakarta, Hanoi","(GMT +08:00) Beijing, Chongqing, Urumqi",
"(GMT +08:00) Hong Kong, Perth, Singapore, Taipei","(GMT +09:00) Tokyo, Osaka, Sapporo, Seoul, Yakutsk",
"(GMT +09:30) Adelaide","(GMT +09:30) Darwin","(GMT +10:00) Brisbane, Melbourne, Sydney",
"(GMT +10:00) Guam, Port Moresby, Vladivostok","(GMT +10:00) Hobart",
"(GMT +11:00) Magadan, Solomon Is., New Caledonia","(GMT +12:00) Fiji, Kamchatka, Marshall Is.",
"(GMT +12:00) Wellington, Auckland"};
//記錄offset的陣列,即時間差,單位minutes
string[] offset = {"-720","-660","-600","-540","-480","-420","-420","-360",
"-360","-360","-300","-300","-300","-240","-240","-210",
"-180","-180","-120","-060","+000","+000","+060","+060",
"+060","+120","+120","+120","+120","+120","+180","+180",
"+180","+240","+270","+300","+330","+360","+420","+480",
"+480","+540","+570","+570","+600","+600","+600","+660",
"+720","+720"
};
int i;//用於記錄是第幾項
string s;//用於記錄時區所對應的offset
相關推薦
C#Bitmap裁剪圖片後顯示在pictureBox內,形成圖片移動效果
使用者介面大作業,選擇時區時將地圖上該時區顯示在圖片中間。 就是這樣,地圖是720*180的,含有兩個世界地圖,足夠剪裁出時區在中間的360*180圖,所以pictureBox是360*180的。 這是複製剪裁圖片的函式, private void Clone_map(/
C# 連線mysql,連線後顯示多個執行緒池
資料庫連線字串 return string.Concat(new string[] { &n
UIButton設定圖片後顯示的圖片不使用@3x規格
問題描述 專案中APP有個大的圖片按鈕,開始直接用UIButton設定圖片進行顯示。 但是使用了產品化給的切圖後,發現按鈕中的圖片很小,在6p中的大小明顯不是@3x格式的。 之後嘗試了各種方法設定UIButton的frame,UIButton中imageV
微信小程式 實現點選按鈕選擇圖片後顯示圖片並且可以預覽該圖片
wxml: js: data裡 要寫圖片這個變數。 點選選擇圖片 預覽圖片 給 image加事件,利用e.target.dataset.src 獲取當前圖片地址,賦值給wx.previewImage的current變數。
android 刪除圖片後通知系統圖庫刪除圖片
//刪除檔案後更新資料庫 通知媒體庫更新資料夾,!!!!!filepath(資料夾路徑)要求儘量精確,以防刪錯 public static void updateFileFromDatabase(Context context,String filepath){ Strin
Excel單元格內插入圖片(VBA建立函式,根據圖片名稱批量插入)
1. 在桌面建立素材資料夾“相簿”存放要插入的圖片,Excel“花”為待插入的Excel表。2. “花”表格內容佈局如下 3. 建立VBA函式(sheet1-->右鍵-->檢視程式碼-->將如下程式碼複製進來-->儲存)Sub 插入圖形應用() Fo
CSS 圖片居中顯示不變形,顯示圖片中間部分
<div style="background-image:url(這裡填寫圖片的路徑}); background-repeat: no-repeat; background-position:center center; background-size: cover
基於Vue + Node.js + MongoDB的圖片上傳組件,實現圖片的預覽和刪除
信息 clas 發送數據 演示 新增 one input標簽 return tof 公司要寫一些為自身業務量身定制的的組件,要基於Vue,趁著這個機會,自己在業余時間也寫了個組件,選擇寫圖片上傳是因為自己之前一直對這個功能比較迷糊,所以這次好好了解了一下。演示在網址打開後的
圖片列表分頁外掛,相簿圖片展示,素材庫圖片展示
(1)第一種外掛效果圖如下: (2)第二種外掛效果圖如下: 兩種圖片分頁展示外掛,自己比較喜歡第一種,css等樣式,也用心除錯了一下,蘿蔔青菜各有所愛吧 ^_^ 提供的外掛是純前臺的指令碼,下載下來開啟index.html頁面即可看到效果。 也提供了通過AJAX載入資
SDWebImage載入圖片URL第一次失敗,後面圖片URL存在不重新整理的問題
業務需求,有時候會首先出現圖片的網路URL地址,但是並沒有顯示出來,使用SDWebImage顯示圖片如下 self.itemImageView sd_setImageWithURL:<#(nullable NSURL *)#>]; 但是發現,後面
Android問題集(二)——TextView在點選時顯示不同顏色,Button點選效果
1、在res目錄下新建名為color資料夾; 2、在color中新建text_color.xml檔案,並選擇selector選項(如下圖): 3、在text_color.xml中填寫如下程式碼: <?xml version="1.0"
對於根據圖片url的轉base64,下載圖片的工具類
import java.io.ByteArrayOutputStream; import java.io.DataInputStream; import java.io.File; import java.io.FileOutputStream; import java.io
前端圖片上傳功能,可刪除,可限制上傳張數,可限制圖片的格式和大小,pc端移動端都通用。原生無依賴。
html部分: <div class="item"> <div class="title small_title">上傳專案圖片</div> <div class="contain_upload">
C# 中 PictureBox 載入圖片後無法刪除解決方法
//顯示圖片 private void button1_Click(object sender, EventArgs e) { pictureBox1.Image = GetFile(@"f:\demo.gif"); } //不顯示並釋放資源 private void button2_Click(o
c#圖片在PictureBox內任意角度旋轉問題(360度)
(1) public static Bitmap RotateImage(Image image, float angle) { if (image == null) throw new
c# winform 讀取oracle中blob欄位的圖片並且顯示到pictureBox裡,儲存進庫
C#程式碼 private void button2_Click(object sender, EventArgs e) { OracleConnection conn = dbc.getConnection();//獲得conn連線
JavaScript基礎 顯示/隱藏效果 點擊圖片,DIV顯示,圖片更換,點擊更換後的圖片,DIV隱藏
努力學習 不出 圖片 視頻教程 .cn clas == display 推薦 鎮場詩: 清心感悟智慧語,不著世間名與利。學水處下納百川,舍盡貢高我慢意。 學有小成返哺根,願鑄一良心博客。誠心於此寫經驗,願見文者得啟發。—————————————————————
搞清Image加載事件(onload)、加載狀態(complete)後,實現圖片的本地預覽,並自適應於父元素內
斷圖 idt ont election href this 出現 alpha ole onload與complete介紹 complete只是HTMLImageElement對象的一個屬性,可以判斷圖片加載完成,不管圖片是不是有緩存;而onload則是這個Image對象的
固定大小容器內,不同比例的圖片高度撐滿,寬度居中裁剪
logs pos -i borde 同比 最終 分享 1-58 不定 在一個商品展示列表中,一個需求是在一個正方形的方塊中,按原比例展示商品圖片,但是圖片比例不定,需要居中顯示,高度撐滿,寬度多余的隱藏。 結構: imgOuter是固定容器,寬高都是120px; CSS代
qrc資源文件加載後,裸機環境下圖片不顯示
apple eap mage 有關 cat image 取反 根據 format 問題描述:在qt開發環境下,使用qss進行界面美化工作,裏面包含許多圖片資源。最後項目決定把這些圖片資源和代碼一起打包。然後就把圖片資源和qss文件一起編入qrc文件中進行編譯。在本機開發環境