本文要提供的类可以为图片加文字水印,以及判断是否是图片文件。经过测试可运行,例子请下载:http://hovertree.com/h/bjaf/5qc5eh6y.htm 例子效果图: 以下是HovercWarter类的代码: 1 using System.Drawing; 2 using System.Drawing.Imaging; 3 using Syst
本文要提供的类可以为图片加文字水印,以及判断是否是图片文件。经过测试可运行,例子请下载:http://hovertree.com/h/bjaf/5qc5eh6y.htm
例子效果图:
以下是HovercWarter类的代码:
<span style="color: #008080;"> 1</span> <span style="color: #0000ff;">using</span><span style="color: #000000;"> System.Drawing; </span><span style="color: #008080;"> 2</span> <span style="color: #0000ff;">using</span><span style="color: #000000;"> System.Drawing.Imaging; </span><span style="color: #008080;"> 3</span> <span style="color: #0000ff;">using</span><span style="color: #000000;"> System.IO; </span><span style="color: #008080;"> 4</span> <span style="color: #008080;"> 5</span> <span style="color: #0000ff;">namespace</span><span style="color: #000000;"> HoverTreeBatch.HovercFrame </span><span style="color: #008080;"> 6</span> <span style="color: #000000;">{ </span><span style="color: #008080;"> 7</span> <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">class</span><span style="color: #000000;"> HovercWarter </span><span style="color: #008080;"> 8</span> <span style="color: #000000;">{ </span><span style="color: #008080;"> 9</span> <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">static</span> Image AddTextToImg(Image image, <span style="color: #0000ff;">string</span><span style="color: #000000;"> text) </span><span style="color: #008080;">10</span> <span style="color: #000000;">{ </span><span style="color: #008080;">11</span> Bitmap bitmap = <span style="color: #0000ff;">new</span><span style="color: #000000;"> Bitmap(image, image.Width, image.Height); </span><span style="color: #008080;">12</span> Graphics g =<span style="color: #000000;"> Graphics.FromImage(bitmap); </span><span style="color: #008080;">13</span> <span style="color: #008080;">14</span> <span style="color: #0000ff;">float</span> fontSize = <span style="color: #800080;">12.0f</span>; <span style="color: #008000;">//</span><span style="color: #008000;">字体大小</span> <span style="color: #008080;">15</span> <span style="color: #0000ff;">float</span> textWidth = text.Length * fontSize; <span style="color: #008000;">//</span><span style="color: #008000;">文本的长度 </span><span style="color: #008080;">16</span> <span style="color: #008000;">//</span><span style="color: #008000;">下面定义一个矩形区域,以后在这个矩形里画上白底黑字</span> <span style="color: #008080;">17</span> <span style="color: #0000ff;">float</span> rectX = <span style="color: #800080;">0</span><span style="color: #000000;">; </span><span style="color: #008080;">18</span> <span style="color: #0000ff;">float</span> rectY = <span style="color: #800080;">0</span><span style="color: #000000;">; </span><span style="color: #008080;">19</span> <span style="color: #0000ff;">float</span> rectWidth = text.Length * (fontSize + <span style="color: #800080;">8</span><span style="color: #000000;">); </span><span style="color: #008080;">20</span> <span style="color: #0000ff;">float</span> rectHeight = fontSize + <span style="color: #800080;">8</span><span style="color: #000000;">; </span><span style="color: #008080;">21</span> <span style="color: #008000;">//</span><span style="color: #008000;">声明矩形域</span> <span style="color: #008080;">22</span> RectangleF textArea = <span style="color: #0000ff;">new</span><span style="color: #000000;"> RectangleF(rectX, rectY, rectWidth, rectHeight); </span><span style="color: #008080;">23</span> <span style="color: #008080;">24</span> Font font = <span style="color: #0000ff;">new</span> Font(<span style="color: #800000;">"</span><span style="color: #800000;">宋体</span><span style="color: #800000;">"</span>, fontSize); <span style="color: #008000;">//</span><span style="color: #008000;">定义字体</span> <span style="color: #008080;">25</span> Brush whiteBrush = <span style="color: #0000ff;">new</span> SolidBrush(Color.White); <span style="color: #008000;">//</span><span style="color: #008000;">白笔刷,画文字用</span> <span style="color: #008080;">26</span> Brush blackBrush = <span style="color: #0000ff;">new</span> SolidBrush(Color.Black); <span style="color: #008000;">//</span><span style="color: #008000;">黑笔刷,画背景用</span> <span style="color: #008080;">27</span> <span style="color: #008080;">28</span> <span style="color: #000000;">g.FillRectangle(blackBrush, rectX, rectY, rectWidth, rectHeight); </span><span style="color: #008080;">29</span> <span style="color: #008080;">30</span> <span style="color: #000000;">g.DrawString(text, font, whiteBrush, textArea); </span><span style="color: #008080;">31</span> MemoryStream ms = <span style="color: #0000ff;">new</span><span style="color: #000000;"> MemoryStream(); </span><span style="color: #008080;">32</span> <span style="color: #008000;">//</span><span style="color: #008000;">保存为Jpg类型</span> <span style="color: #008080;">33</span> <span style="color: #000000;">bitmap.Save(ms, ImageFormat.Jpeg); </span><span style="color: #008080;">34</span> <span style="color: #008080;">35</span> Image h_hovercImg =<span style="color: #000000;"> Image.FromStream(ms); </span><span style="color: #008080;">36</span> <span style="color: #008080;">37</span> <span style="color: #000000;">g.Dispose(); </span><span style="color: #008080;">38</span> <span style="color: #000000;">bitmap.Dispose(); </span><span style="color: #008080;">39</span> <span style="color: #008080;">40</span> <span style="color: #008080;">41</span> <span style="color: #0000ff;">return</span><span style="color: #000000;"> h_hovercImg; </span><span style="color: #008080;">42</span> <span style="color: #000000;">} </span><span style="color: #008080;">43</span> <span style="color: #008080;">44</span> <span style="color: #008080;">45</span> <span style="color: #808080;">///</span> <span style="color: #808080;"><summary></summary></span> <span style="color: #008080;">46</span> <span style="color: #808080;">///</span><span style="color: #008000;"> 根据文件头判断上传的文件类型 </span><span style="color: #008080;">47</span> <span style="color: #808080;">///</span> <span style="color: #808080;"></span> <span style="color: #008080;">48</span> <span style="color: #808080;">///</span> <span style="color: #808080;"><param name="filePath"></span><span style="color: #008000;">filePath是文件的完整路径 </span><span style="color: #808080;"></span> <span style="color: #008080;">49</span> <span style="color: #808080;">///</span> <span style="color: #808080;"><returns></returns></span><span style="color: #008000;">返回true或false</span><span style="color: #808080;"></span> <span style="color: #008080;">50</span> <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">bool</span> IsPicture(<span style="color: #0000ff;">string</span><span style="color: #000000;"> filePath) </span><span style="color: #008080;">51</span> <span style="color: #000000;">{ </span><span style="color: #008080;">52</span> <span style="color: #0000ff;">try</span> <span style="color: #008080;">53</span> <span style="color: #000000;">{ </span><span style="color: #008080;">54</span> FileStream fs = <span style="color: #0000ff;">new</span><span style="color: #000000;"> FileStream(filePath, FileMode.Open, Fileaccess.Read); </span><span style="color: #008080;">55</span> BinaryReader reader = <span style="color: #0000ff;">new</span><span style="color: #000000;"> BinaryReader(fs); </span><span style="color: #008080;">56</span> <span style="color: #0000ff;">string</span><span style="color: #000000;"> fileClass; </span><span style="color: #008080;">57</span> <span style="color: #0000ff;">byte</span><span style="color: #000000;"> buffer; </span><span style="color: #008080;">58</span> buffer =<span style="color: #000000;"> reader.ReadByte(); </span><span style="color: #008080;">59</span> fileClass =<span style="color: #000000;"> buffer.ToString(); </span><span style="color: #008080;">60</span> buffer =<span style="color: #000000;"> reader.ReadByte(); </span><span style="color: #008080;">61</span> fileClass +=<span style="color: #000000;"> buffer.ToString(); </span><span style="color: #008080;">62</span> <span style="color: #000000;">reader.Close(); </span><span style="color: #008080;">63</span> <span style="color: #000000;">fs.Close(); </span><span style="color: #008080;">64</span> <span style="color: #0000ff;">if</span> (fileClass == <span style="color: #800000;">"</span><span style="color: #800000;">255216</span><span style="color: #800000;">"</span> || fileClass == <span style="color: #800000;">"</span><span style="color: #800000;">7173</span><span style="color: #800000;">"</span> || fileClass == <span style="color: #800000;">"</span><span style="color: #800000;">13780</span><span style="color: #800000;">"</span> || fileClass == <span style="color: #800000;">"</span><span style="color: #800000;">6677</span><span style="color: #800000;">"</span><span style="color: #000000;">) </span><span style="color: #008080;">65</span> <span style="color: #008000;">//</span><span style="color: #008000;">何问起 hovertree.com </span><span style="color: #008080;">66</span> <span style="color: #008000;">//</span><span style="color: #008000;">255216是jpg;7173是gif;6677是BMP,13780是PNG;7790是exe,8297是rar </span> <span style="color: #008080;">67</span> <span style="color: #000000;">{ </span><span style="color: #008080;">68</span> <span style="color: #0000ff;">return</span> <span style="color: #0000ff;">true</span><span style="color: #000000;">; </span><span style="color: #008080;">69</span> <span style="color: #000000;">} </span><span style="color: #008080;">70</span> <span style="color: #0000ff;">else</span> <span style="color: #008080;">71</span> <span style="color: #000000;">{ </span><span style="color: #008080;">72</span> <span style="color: #0000ff;">return</span> <span style="color: #0000ff;">false</span><span style="color: #000000;">; </span><span style="color: #008080;">73</span> <span style="color: #000000;">} </span><span style="color: #008080;">74</span> <span style="color: #000000;">} </span><span style="color: #008080;">75</span> <span style="color: #0000ff;">catch</span> <span style="color: #008080;">76</span> <span style="color: #000000;">{ </span><span style="color: #008080;">77</span> <span style="color: #0000ff;">return</span> <span style="color: #0000ff;">false</span><span style="color: #000000;">; </span><span style="color: #008080;">78</span> <span style="color: #000000;">} </span><span style="color: #008080;">79</span> <span style="color: #000000;">} </span><span style="color: #008080;">80</span> <span style="color: #000000;">} </span><span style="color: #008080;">81</span> }
另外出一道.NET的题目:http://hovertree.com/shortanswer/bjaf/9vqxwuda.htm
开发技术文章收集: http://www.cnblogs.com/sosoft/p/kaifajishu.html

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SecList
SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

ZendStudio 13.5.1 맥
강력한 PHP 통합 개발 환경
