2010-08-27 66 views
2

我正在尋找可以實時渲染按鈕的解決方案\軟件。 也就是說,我有一張圖片和文字,我希望它們能夠實時完全成爲一張圖片。如何實時渲染圖像

謝謝

+0

您是指純客戶端(java-script)解決方案還是服務器可以參與其中? – VinayC 2010-08-27 05:06:19

+0

我希望客戶端能夠獲取包含嵌入文本的圖像 - 但是作爲圖像,而不是文本 – Himberjack 2010-08-27 05:53:22

回答

1

您可以使用System.Drawing命名空間基於文本動態創建圖像。

private Bitmap CreateBitmapImage(string imageText, string imageUrl) 
{ 
    Bitmap myBitmap = new Bitmap(imageUrl); 
    Graphics g = Graphics.FromImage(myBitmap); 
    g.DrawString(imageText, new Font("Tahoma", 40), Brushes.White, new PointF(0, 0)); 

    return (objBmpImage); 
} 

一旦你在內存中的Bitmap對象,你可以將它保存到磁盤並從網絡調用它的位置。

Bitmap bmp = CreateBitmapImage("my picture", @"C:\myBasePic.bmp"); 
bmp.Save(@"C:\bla.png", System.Drawing.Imaging.ImageFormat.png); 
+0

我認爲jpg或png編解碼器更適合web而不是bmp。 – Zafer 2010-09-03 11:01:04

+0

@Zafer:對!我的壞:-)更改輸出格式爲PNG – Peter 2010-09-03 11:12:32

0

如果您可以指定爲什麼這樣的要求存在,那將是一件好事。我遇到過的這種場景之一是需要帶有不同文本的圖像按鈕(帶有陰影背景的圓角) - 使用CSS可以輕鬆實現。如果你真的想將圖像和文本組合在一起,那麼你可以在服務器端做到這一點(使用System.Drawing類型),並通過處理程序/ Web服務提供組合圖像。