當前位置: 首頁>>代碼示例>>C#>>正文


C# Canvas.drawBitmap方法代碼示例

本文整理匯總了C#中Canvas.drawBitmap方法的典型用法代碼示例。如果您正苦於以下問題:C# Canvas.drawBitmap方法的具體用法?C# Canvas.drawBitmap怎麽用?C# Canvas.drawBitmap使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在Canvas的用法示例。


在下文中一共展示了Canvas.drawBitmap方法的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的C#代碼示例。

示例1: onDraw

		protected internal override void onDraw(Canvas canvas)
		{
			canvas.drawCircle(mBounds.centerX(), mBounds.centerY(), mBounds.width() * 0.5f, mPaint);

			if (!mMute)
			{
				if (mIconOn != null)
				{
					canvas.drawBitmap(mIconOn, mBounds.centerX() - mIconOn.Width * 0.5f, mBounds.centerY() - mIconOn.Height * 0.5f, mPaint);
				}
				canvas.drawCircle(mBounds.centerX(), mBounds.centerY(), mBounds.width() * 0.5f * mValue, mPaintGradient);

			}
			else
			{
				if (mIconOff != null)
				{
					canvas.drawBitmap(mIconOff, mBounds.centerX() - mIconOff.Width * 0.5f, mBounds.centerY() - mIconOff.Height * 0.5f, mPaint);
				}
			}

		}
開發者ID:moljac,項目名稱:Samples.Data.Porting,代碼行數:22,代碼來源:MeterView.cs

示例2: onDraw

		protected internal override void onDraw(Canvas canvas)
		{
			float radius = 500 * 0.5f;
			canvas.drawCircle(Width, 0, radius, mPaint);

			if (!mMute)
			{
				if (mHeadset != null)
				{
					canvas.drawBitmap(mHeadset, (Width - mHeadset.Width - 30), mHeadset.Height * 0.3f, mPaint);
				}
				canvas.drawCircle(Width, 0, radius * mValue, mPaintGradient);
			}
		}
開發者ID:moljac,項目名稱:Samples.Data.Porting,代碼行數:14,代碼來源:AudioLevelView.cs

示例3: onDraw

		protected internal override void onDraw(Canvas canvas)
		{
			canvas.drawColor(Color.DKGRAY);
			canvas.drawRect(0, 0, mBitmap.Width, mBitmap.Height, paintFromColor(Color.WHITE, Paint.Style.FILL_AND_STROKE));

			canvas.drawBitmap(mBitmap, 0, 0, mBitmapPaint);

			canvas.drawPath(mPath, mPaint);
		}
開發者ID:moljac,項目名稱:Samples.Data.Porting,代碼行數:9,代碼來源:DrawingView.cs

示例4: saveBitmapPNGWithBackgroundColor

		/// <summary>
		/// Save PNG image with background color
		/// </summary>
		/// <param name="strFileName">
		///            Save file path </param>
		/// <param name="bitmap">
		///            Input bitmap </param>
		/// <param name="nQuality">
		///            Jpeg quality for saving </param>
		/// <param name="nBackgroundColor">
		///            background color </param>
		/// <returns> whether success or not </returns>
		public static bool saveBitmapPNGWithBackgroundColor(string strFileName, Bitmap bitmap, int nBackgroundColor)
		{
			bool bSuccess1 = false;
			bool bSuccess2 = false;
			bool bSuccess3;
			File saveFile = new File(strFileName);

			if (saveFile.exists())
			{
				if (!saveFile.delete())
				{
					return false;
				}
			}

			int nA = (nBackgroundColor >> 24) & 0xff;

			// If Background color alpha is 0, Background color substitutes as white
			if (nA == 0)
			{
				nBackgroundColor = unchecked((int)0xFFFFFFFF);
			}

			Rect rect = new Rect(0, 0, bitmap.Width, bitmap.Height);
			Bitmap newBitmap = Bitmap.createBitmap(bitmap.Width, bitmap.Height, Bitmap.Config.ARGB_8888);
			Canvas canvas = new Canvas(newBitmap);
			canvas.drawColor(nBackgroundColor);
			canvas.drawBitmap(bitmap, rect, rect, new Paint());

			System.IO.Stream @out = null;

			try
			{
				bSuccess1 = saveFile.createNewFile();
			}
			catch (IOException e1)
			{
				// TODO Auto-generated catch block
				Console.WriteLine(e1.ToString());
				Console.Write(e1.StackTrace);
			}

			try
			{
				@out = new System.IO.FileStream(saveFile, System.IO.FileMode.Create, System.IO.FileAccess.Write);
				bSuccess2 = newBitmap.compress(Bitmap.CompressFormat.PNG, 100, @out);
			}
			catch (Exception e)
			{
				Console.WriteLine(e.ToString());
				Console.Write(e.StackTrace);
			}

			try
			{
				if (@out != null)
				{
					@out.Flush();
					@out.Close();
					bSuccess3 = true;
				}
				else
				{
					bSuccess3 = false;
				}

			}
			catch (IOException e)
			{
				Console.WriteLine(e.ToString());
				Console.Write(e.StackTrace);
				bSuccess3 = false;
			}
			finally
			{
				if (@out != null)
				{
					try
					{
						@out.Close();
					}
					catch (IOException e)
					{
						// TODO Auto-generated catch block
						Console.WriteLine(e.ToString());
						Console.Write(e.StackTrace);
					}
				}
//.........這裏部分代碼省略.........
開發者ID:moljac,項目名稱:Samples.Data.Porting,代碼行數:101,代碼來源:AnimationUtils.cs


注:本文中的Canvas.drawBitmap方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。