成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

詳解Visual Studio 2010增加背景圖片的擴展

開發 后端
在這里我們將討論的是Visual Studio 2010增加背景圖片的擴展,希望這樣的擴展能讓大家的工作得到些許放送。

前些日子心血來潮去Visual Studio擴展庫上淘了一圈,發現了這樣一個擴展:http://visualstudiogallery.msdn.microsoft.com/zh-cn/0e6f9037-b753-469e-86d4-bfba78c74cf6

但是這個擴展用起來還有一些不方便的地方,例如會鎖定背景圖片文件、縮放編輯器的時候背景圖片會因為滾動條的定位而飄到上方、透明度和背景圖像的位置不能改變等等。

而這個擴展***一次更新是5月5日,到現在已經過了五個月了。所以我決定仿照它的原理自己寫一個。

使用起來效果大概是這樣:

其實這個東西也是比較容易做的,只要安裝了Visual Studio 2010 SDK就可以創建Editor Viewport Adornment項目,在新建的項目的基礎上很容易搭建出像這樣的擴展。

這個擴展要通過一個XML文件來進行設置,這個XML文件會在安裝擴展以后***次啟動Visual Studio 2010的時候自動建立在“我的文檔”中,文件名為“ItaBackgroundKyuu.config”。

其中使用的參數都是WPF和BCL中的常見數據類型:

  1. public AlignmentX AlignXpublic AlignmentY AlignYpublic Stretch StretchModepublic TileMode TileMode  
  2. public StretchDirection ScaleDir;public Stretch ScaleMode;public HorizontalAlignment HAlign;public VerticalAlignment VAlign; 

在我的機器上(也就是上面的效果圖的來源)是這樣設置的:

  1. <?xml version="1.0" encoding="utf-8"?>   
  2. <ItaBackgroundConfig2 LayerOpacity="0.5">   
  3.   <BackgroundBrush Opacity="0.5">   
  4.      <Uri>D:\Files\Yuki\Pictures\haoren65.png</Uri>   
  5.      <AlignX>Center</AlignX>   
  6.      <AlignY>Center</AlignY>   
  7.      <StretchMode>Fill</StretchMode>   
  8.      <TileMode>Tile</TileMode>   
  9.    </BackgroundBrush>   
  10.    <BackgroundImage Opacity="1">   
  11.      <Uri>D:\Files\Yuki\Documents\aizawa-hikaru.png</Uri>   
  12.      <ScaleDir>Both</ScaleDir>   
  13.      <ScaleMode>Uniform</ScaleMode>   
  14.      <HAlign>Right</HAlign>   
  15.      <VAlign>Bottom</VAlign>   
  16.    </BackgroundImage>   
  17.    <OverrideSettings>   
  18.      <EditorBackgroundBrush>       
  19. </EditorBackgroundBrush>   
  20.    </OverrideSettings>   
  21.  </ItaBackgroundConfig2>  

在我的實現中使用了兩種方式來繪制背景:一種為了兼容之前日本人寫的ItaBackgroundImage而使用Image控件;另一種則使用了ImageBrush,可以選擇使用圖素(Tile)與否。

這里需要說明一下,由于我對圖片的單位換算還不熟,所以如果在啟用了圖素模式的條件下選用了和屏幕的DPI不同的圖片(例如我用的haoren65.png——這是我幾年前為某個娛樂用途制作的背景圖像),就有可能會出現圖像被縮小或拉伸之類的現象。

由于我也是剛開始接觸Visual Studio 2010擴展開發,所以對于對話框之類的東西暫時也是沒辦法。配置文件也是使用的XML序列化而非正統的ConfigurationSection+ConfigurationManager模式(在下一個版本中我會把它改好的——如果還有下一個版本的話)。

這里提一下:

  1. var xs = new XmlSerializer(typeof(ItaConfig2), new XmlRootAttribute("ItaBackgroundConfig2"));
  2.  // 這里使用XmlRootAttribute可以改變序列化時根節點的名稱
  3. var voidNamespaceMapping = new XmlSerializerNamespaces();
  4. voidNamespaceMapping.Add("", "");xs.Serialize(sw, config, voidNamespaceMapping); 
  5. //在這里使用一個“幾乎”為空的XmlSerializerNamespaces可以清除掉序列化時產生的不必要的namespace。 

好了,說了這么多,想下載這個擴展玩一玩的話可以點擊這個鏈接。

特別強調一下:這不是一個完全的、穩定的產物,可能存在這樣那樣的缺陷。

原文標題:【玩具】給Visual Studio 2010增加背景圖片的擴展

鏈接:http://www.cnblogs.com/NanaLich/archive/2010/10/12/an-ita-background-extension-for-visual-studio-2010-code-editor.html

責任編輯:彭凡 來源: 博客園
相關推薦

2010-09-09 14:38:05

CSS背景圖片

2010-08-26 10:26:44

CSS

2010-01-12 09:11:18

Visual StudVisual Stud

2011-09-01 15:16:00

Ubuntu

2010-05-06 14:43:29

Visual Stud

2010-02-05 09:06:17

Visual Stud

2010-04-27 11:35:05

Oracle Java

2009-12-02 09:43:38

Visual Stud

2009-05-31 10:36:55

微軟VS2010Azure

2010-05-28 13:30:02

Visual Stud

2009-11-24 09:00:02

Visual Stud

2009-03-19 08:54:15

Windows 7定制登陸界面

2011-08-18 17:24:34

iPhone開發UINavigatio

2010-08-18 13:27:15

CSS兼容IE6

2010-03-11 14:37:47

Visual StudScrum

2010-07-27 09:40:01

敏捷Visual Stud

2010-07-29 09:41:23

Visual Stud

2010-06-12 08:53:17

Visual Stud

2010-01-14 14:12:14

Visual Stud

2010-12-16 10:00:20

QtVisual Stud
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 午夜视频在线免费观看 | 日韩一区二区在线看 | 一区在线视频 | 国产精品一级在线观看 | 国精产品一区一区三区免费完 | 超碰天天 | 免费黄色的视频 | av在线播放网址 | 亚洲精品大片 | www免费视频 | 在线精品一区二区 | 人人爽日日躁夜夜躁尤物 | 精品自拍视频在线观看 | 午夜丰满少妇一级毛片 | 亚洲狠狠爱一区二区三区 | 91麻豆精品国产91久久久更新资源速度超快 | 成年男女免费视频网站 | 最新国产精品 | 亚洲永久免费观看 | 久久久www成人免费精品 | 色一情一乱一伦一区二区三区 | 国产高清一区二区 | 欧美日韩亚洲国产综合 | 97热在线 | 久久这里只有 | 日韩手机视频 | 色综合久久天天综合网 | 91精品无人区卡一卡二卡三 | 日本三级线观看 视频 | 一级黄色片在线看 | 色综合久久88色综合天天 | 亚洲一区在线观看视频 | 天天草av| 黄色大片免费播放 | 亚洲欧美国产一区二区三区 | 无码日韩精品一区二区免费 | av毛片| av大片 | 中文字幕日韩一区 | 亚洲精品一区二三区不卡 | a级片网站|