dotnettextbox,DotNetTextbox怎么去掉上传图片上的水印,请教急.
本文目录索引
- 1,DotNetTextbox怎么去掉上传图片上的水印,请教急.......
- 2,DotNetTextbox使用问题
- 3,如何使用 F12 开发人员工具调试网页
- 4,ASP.NET运行时错误
- 5,求一段警示语,警示他人不要捕杀野生动物,50字左右
- 6,dotnetTextBox上传图片保存路径问题!
- 7,上传图片时自动添加水印水印
1,DotNetTextbox怎么去掉上传图片上的水印,请教急.......
DotNetTextBox控件配置上传功能
--------------------------------------------------------------------------------
注:免费版开源版Ver3.3.4以后版本可使用Wizard.aspx在线可视化设置向导来配置该功能!
一、配置向导
第一步:打开system_dntb/uploadconfig/default.config文件,请按相应注释进行设置,配置文件如下:
20480
1024
false
true
on
true
false
http://www.aspxcn.com.cn
false
false
img/aspnet2.GIF
false
false
HW
150
150
true
true
true
true
true
show
show
10
rar,zip,pdf,txt
jpg,gif,png
wmv,rm,rmvb,asf,wma,mpg,mp3,swf,flv
html,htm
第二步:设置控件UploadConfig属性,指定配置文件的存放路径,控件默认指向default.config。
第三步:设置控件UploadFolder属性,指定上传文件的存放文件夹,控件默认upload/(相对于system文件夹,即实际上传路径为system_dntb/upload/)。
第四步:设置控件UploadFolderSize属性,指定上传文件夹的空间大小。如果为0,则由上传配置文件决定空间大小
\
注意
on
http://www.aspxcn.com.cn
2,DotNetTextbox使用问题
http://hi.baidu.com/gaudedon/blog/item/8a0dc318235291b14aedbc26.html
1.直接在ASPX页面引用控件的话,请将DotNetTextBox.dll复制到页面所在项目的bin目录下,并在页面顶部添加:
在需要加入控件的地方添加:
2.路径的设置也可在项目web.config的 配置节里直接添加全局的路径设置,这样该项目下所有页面的控件调用都不用单独设置上述两个路径!web.config设置如下:
3.VS2005编辑器中可通过工具>选择工具箱项>.NET Framework组件>浏览并选定DotNetTextBox.dll后按确定控件将默认显示在VS2005编辑器工具箱的常规选项卡(可自行将控件拉到标准选项卡中),也可以直接在工具箱的标准选项卡列标头或所属列任何控件上右击>选择项> .NET Framework组件>浏览并选定DotNetTextBox.dll后即可直接将控件加入标准选项卡。这样以后只要在常规选项卡或标准选项卡中将WebEditor控件直接拖放到项目的设计页面即可完成控件的调用。
4.将system_dntb目录拷贝到所在项目里。
5.将控件bin目录里的Word_dntb.dll,WordPlugin.dll拷贝到项目BIN目录里(如果不需要Word导入功能,删除system_dntb目录里的importword.aspx就可以不需要拷贝这两个DLL文件)
3,如何使用 F12 开发人员工具调试网页
F12 开发人员工具是一套按需采用的工具,内建于 Windows Internet Explorer 9 的每次安装之中。网站开发人员可以随时在任何网页上使用 F12 工具,从而快速调试 JavaScript、HTML 和级联样式表 (CSS),还可以跟踪并查明网页或网络的性能问题。
F12的存在要求程序开发人员重要的数据不能写在HTML页面中,要写在一般处理程序或者后台中,不然很容易被用户知道比如密码之类的。对WEP开发人员有利的地方就是可以参照别人网站的布局样式等来构思自己的网站。因为F12可以看到网站的布局、样式、js等代码哦!
使用“HTML”选项卡
“HTML”选项卡视图在由内存中的 Windows Internet Explorer 9
呈现的树视图中显示你的网页的动态标记。它反映打开 F12 时的 DOM,如果有任何更改,则需要刷新。
你可以使用鼠标或键盘直接在树视图中导航,以及查看特性和更改值。
若要跳转到网页上的特定元素,请按 Ctrl+B,或单击“单击选择元素” 按钮。在网页上,当你将鼠标悬停在元素上方时将突出显示相应的元素。单击某个元素时,将在 HTML 视图中突出显示 DOM 树中对应的节点。
在“HTML”选项卡中选择一个元素时,可使用“视图”>“源”菜单在你的视图中筛选出按照元素关联的 CSS 样式或仅按照元素本身选择的元素。
“带有样式的元素源”按钮仅在新窗口中显示选定元素的 HTML 源及其内容,以及适用于它的 CSS。这有助于只关注选定元素的源文件。必须首先使用“HTML”选项卡视图选择 DOM 树的主体内的某个 HTML 元素,然后才可以运行此命令。若要选择某个元素,可单击“单击选择元素”按钮,或在 DOM 树中单击某个元素。
当你使用“单击选择元素”时,首先刷新视图是个不错的主意。
若要展开或折叠某个元素的属性,请单击用加号 (+ ) 或减号 (-) 标记的框。HTML 和 CSS 视图中的所有元素都是可编辑的,并且编辑操作会立即生效。通过单击元素名称旁边的复选框,可以打开或关闭样式规则和特性。
查看动态 HTML 代码
大多数网站使用动态代码。客户端脚本通常用于生成用户可以看到的呈现的 HTML。静态 HTML
代码的数量通常很少,仅用于在页面上启动操作。由于 F12 工具将显示呈现在浏览器中的 HTML 和 CSS 代码,而不是显示严格的 HTML
源,因此查找错误更容易一些。
“HTML”选项卡显示 DOM 的当前状态,而不会自动跟踪更改。如果你更改了某个值或特性,但它没有立即显示,请在“HTML”选项卡中按 F5 刷新视图。
更改值和添加特性
F12 工具允许你更改几乎任何特性或属性的值。从“HTML”选项卡内,从 DOM 树中选择一个元素或使用“单击选择元素”按钮选择一个元素。在属性视图(右窗格)中,单击一个值以突出显示并更改它。
例如,在 Internet Explorer 9 中打开如何使用 CSS3 添加圆角中的 CSS 示例页面并且按 F12 可打开该工具。单击“单击选择元素”按钮 ,然后单击栗色的 Now in stock at Fourth Coffee 标题。 在属性窗格中,单击 "h2" 选择器下的颜色特性。 键入一个新的颜色名称或值,如 blue,然后按 Enter。标题的颜色将立即更改。
要添加特性,请右键单击“HTML”或“CSS”选项卡的左窗格中的元素,然后单击上下文菜单中的“添加属性”。你需要知道该特性的格式(如 "background-color:")和正确值。
若要删除某个特性(你添加的特性或现有特性),请在右窗格视图中单击该特性,然后按 Delete 键。对于原始页中的特性,可通过刷新网页恢复它们。添加的特性需要重新应用。
如果你只希望在某个会话期间临时关闭某个特性,则在“HTML”或“CSS”选项卡的右窗格中清除该特性旁边的复选框。
“HTML”选项卡视图和工具
在左窗格树视图中选择一个元素时,你可以在右侧查看和更改所选元素及其子元素的样式、框模型布局和特性。 你所做的更改不是永久的,当你刷新或打开另一个页面时这些更改会丢失。但是,你可以通过单击“保存”按钮来保存你的 HTML 代码。
当你查看应用于“样式”和“跟踪样式”选项卡中所选元素的多个 CSS 规则时,将根据 CSS
规范,基于这些规则的专一性来显示它们。列表页首的规则将第一个应用到所选元素,而底部的规则是当前定义所选元素的样式属性的规则。这些规则的值是可编辑
的,方法为:单击某个值,键入新值,然后按
"Enter"。更改会立即在网页上显示。这两个属性类型中的信息是相同的。但在“跟踪样式”属性类型中,相同的信息按照属性(在其下面显示规则)分组。
这些属性按字母顺序列出,并基于专一性再次对规则排序。
样式 显示你在树视图中选择的元素的规则和样式。它按规则进行组织,并包含继承的特性和重写的特性。
跟踪样式 显示与样式相同的信息,但是按属性而不是规则分组。
布局 显示所选元素的框模型。通过单击图表中的相应值,可更改“布局”视图中的任意值。“布局”选项卡对可缩放矢量图形 (SVG) 元素禁用。
特性 显示选定元素的特性,如 ID。可以添加或删除特性
右键单击“HTML”选项卡上的菜单
如前面所述,可在“HTML”选项卡的左窗格中右键单击一个元素。下面是你可以在“HTML”选项卡中使用的选项。
菜单项
作用
添加特性 向标记或元素中添加新的特性。
复制 将标记和特性复制到剪贴板中。
复制 InnerHTML 将元素的 InnerHTML 内容(子文本、元素和特性)复制到剪贴板。
复制 OuterHTML 将元素的 OuterHTML 内容(子文本、元素和特性)复制到剪贴板。
如果在“HTML”选项卡中单击某个元素的子节点,如 "h2" 标记的文本元素,则可能无法获得所有选项。如果你未看到所需的选项,则转到父元素并重试。
检查 CSS 规则
“CSS”选项卡显示你的样式表之间的相互影响。此选项卡对于使用多个样式表的网站很有用。若要在样式表之间切换,可使用样式表选择器。当你选择某
个样式表时,左窗格中将显示规则及其相关样式属性。默认情况下,此按钮显示在网页中引用的第一个样式表。如果有多个样式表正在网页上使用,则单击下拉列表
以选择其他样式表。
“CSS”选项卡上的快捷菜单选项
当你右键单击“CSS”选项卡时,快捷菜单将会提供比“HTML”选项卡更多的选项。启用的选项是上下文相关的,并取决于你在“CSS”选项卡中单击的位置。
菜单项
作用
右键单击的位置
添加特性 向标记或元素中添加新的特性。 在规则或特性(任何元素)上。
添加规则 添加选择器、声明或样式。 在白色区域中,而不是在现有元素上。
后加规则 在当前规则之后添加选择器或规则。 在任何元素上。
前加规则 在当前规则之前添加选择器或规则。 在任何元素上。
删除特性。 删除选定的特性。 在任何特性上。
删除规则 删除选定的规则和所有相关的特性。 在任何规则或选择器上。
在“CSS”选项卡中更改数字 CSS 值
CSS 属性的值可以像 F12 工具中的几乎任何其他属性一样进行更改。通过单击属性值并键入新值,可以更改 CSS 属性。在“CSS”选项卡中,还可使用向上键和向下键增加或减小数值。
搜索和保存更改
像 F12 工具中的其余选项卡一样,你可以使用“搜索”框在“HTML”和“CSS”选项卡中搜索特定标记、属性、特性或值。单击“搜索”按钮时,将突出显示搜索关键字的所有实例,并且窗格会滚动到显示第一个匹配项。
如果存在多个匹配项,则可使用“下一个”和“上一个”按钮向前和向后滚动。
你所做的更改(例如,调整框模型或添加特性)不是永久的。当你在浏览器中重新加载页面或导航到其他网页时,你所做的任何更改都会丢失。若要保存对 HTML/CSS 文件的本地副本的更改,请单击左窗格上的“保存”按钮。
4,ASP.NET运行时错误
因为你的设置使得详细的错误信息显示不出来
这里提示你了:
详细信息: 若要使他人能够在远程计算机上查看此特定错误消息的详细信息,请在位于当前 Web 应用程序根目录下的“web.config”配置文件中创建一个 标记。然后应将此 标记的“mode”属性设置为“Off”。
也就是说,在Web.config里找到customErrors> 标记,设置mode为Off
如果没有这个标记,自己建一个
5,求一段警示语,警示他人不要捕杀野生动物,50字左右
保护野生动物的宣传标语
动物是人类的朋友 请保护动物
野生动物是人类的朋友!
鸟是害虫的天敌,鸟是人类的朋友。
鸟儿的歌声是大自然最动听的声音,让这声音永远回荡在我们耳边.
保护野生动物就是保护人类自己!
保护野生动物,维护生态安全!
保护野生动物,实现人与自然和谐共处!
保护鸟类,保护野生动物,人人有责 烹饪家养动物 人人有责
保护动物,人人有责. 请维持生态平衡. 动物是人类的第二,请大家来保护它们. 请不要扼杀我们的"祖先''. 大家行动起来吧,为保护动物而"战斗''.
保护鸟的栖所,就是保护我们人类的生存环境;
保护鸟类,为环境增姿添彩。
保护鸟类,保护生物多样性。
保护鸟类保护野生动物 维护生态平衡。
爱鸟护鸟是人类的美德。
爱护鸟儿吧!不要让树木感到孤独.
护鸟光荣,打鸟可耻。
关爱野生动物,保护美好家园!
关爱生灵,保护鸟类。
关注候鸟 保护环境。
依法保护鸟类,依法保护野生动物;
请保护鸟类,为了明朝悦耳的鸣声。
同在地球上,共享大自然!
同在蓝天下 人鸟共家园。
地球上不能只剩下人类。
今天逝去的一只鸟,明天亡掉的一群人。
绚丽生灵,缘于自由天然!
全社会都来保护鸟类,都来保护野生动物。
真正爱护小鸟,就不要剥夺它的自由!
人人动员,爱鸟护鸟!
劝君莫打枝头鸟,子在巢中望母归。
让我们倾听大自然最美的旋律----鸟儿的歌声.
让人类在大自然愉快前行,让鸟儿在天空中自由翱翔.
蓝蓝的天空中只有配上鸟儿才会有生机,别让天空变的孤独.
6,dotnetTextBox上传图片保存路径问题!
可通过控件PathType内置属性自由切换! 在引用控件的aspx页面找到: 然后对路径进行内置属性修改…… Q:什么叫相对路径(Relative)、绝对根路径(AbsoluteRoot)、绝对全路径(AbsoluteFull)? A: 相对路径如:system_dntb/upload/xx.gif、绝对根路径如:/dotnettextbox/system_dntb/upload/xx.gif、绝对全路径如:http://localhost/dotnettextbox/system_dntb/upload/xx.gif,这些路径形式可通过控件PathType内置属性自由切换! 属性值 说明 AccessKey 获取或设置使您得以快速定位到 Web 服务器控件的访问键(带下划线的字母)。 AdjustSize 设置扩展及收缩编辑框功能的增减幅度。 AutoSaveImgToLocal 是否自动保存编辑器内容里的远程图片到本地。True=是,Flase=否(默认否) BackColor 控件编辑栏背景色。 BorderColor 控件边框样式的颜色。 BorderStyle 控件边框样式。 BorderWidth 控件边框样式的宽度。 Child 是否子控件,同一页面放置多个控件时使用。 CodeBackColor 代码样式背景色。 CodeBorder 代码样式边框粗细。 CodeBorderColor 代码样式边框色。 CodeBorderStyle 代码样式边框样式。 CodeTitle 代码样式标题文字。 DropDownListStyle 下拉选择框的样式风格。xp=XP半透明风格,default=原始风格(商业版属性) EditHeight 输入栏高度。 EditBorderColor 控件编辑栏边框色。 Enabled 获取或设置一个值,该值指示是否启用 Web 服务器控件。 EnableViewState 获取或设置一个值,该值指示服务器控件是否向发出请求的客户端保持自己的视图状态以及它所包含的任何子控件的视图状态。 Focus 页面加载后是否聚焦控件编辑框。 Font 用于控件中文本的字体。(只读,带子属性) ForeColor 控件默认文本颜色。 FrameShadow 控件编辑栏框架阴影。 Height 获取或设置 Web 服务器控件的高度。 ImageStatusBar 是否使用图像形式的状态栏。True=使用图像形式 False=使用按钮形式 ID 获取或设置分配给服务器控件的编程标识符。 Languages 设置界面语言。 LeftAreaAlign 菜单栏左侧区域对齐方式。 LeftAreaWidth 菜单栏左侧区域宽度,与右侧区域宽度关联。 Length 获取编辑控件内容的字符数,配合验证控件即可实现限制控件字符数。 Xhtml 是否要输出符合XHTML1.0代码规范的HTML编码。True=是,Fasle=否(默认) MenuConfig 设置菜单功能配置文件。文件放置在system_dntb/menuconfig/目录下 NewLineMode 回车换行的模式,默认为BR。 PathType 插入文件及图片的路径形式。Relative=相对路径,AbsoluteRoot=绝对根路径,AbsoluteFull=绝对全路径" QuoteBackColor 引用样式背景色。 QuoteBorder 引用样式边框粗细。 QuoteBorderColor 引用样式边框色。 QuoteBorderStyle 引用样式边框样式。 QuoteTitle 引样式标题文字。 RightAreaAlign 菜单栏右侧区域对齐方式。 RightAreaWidth 菜单栏右侧区域宽度,与左侧区域宽度关联。 RightClickMenuConfig 配置编辑器个性化右键菜单功能。(商业版功能) Skin 设置控件皮肤文件的路径。请使用相对路径,相对于system目录,路径最后需带斜杠。 StatusHeight 状态栏高度。 Shadow 是否显示状态栏阴影。 Source 设置控件在代码状态时能否编辑,建议关闭。 Style 获取将在 Web 服务器控件的外部标记上呈现为样式属性的文本属性的集合。 StatusBar 是否显示编辑状态变换栏。 systemFolder 设置System目录所在的路径,请使用相对路径,路径最后需带斜杠。 TabIndex 获取或设置 Web 服务器控件的选项卡索引。 Text 控件文本值。 ToolBarBgImg 控件菜单栏背景图片的网络路径,默认为none。 ToolBarColor 控件菜单栏背景色。 ToolBarHeight 菜单栏高度。 ToolBarWidth 菜单栏宽度。 ToolTip 将鼠标放在控件时显示的工具提示。 UploadConfig 设置上传功能配置文件的名称。 UploadFolder 设置上传文件的目录路径。路径最后需带斜杠并且相对于system文件夹。 Visible 获取或设置一个值,该值指示服务器控件是否作为 UI 呈现在页上。 Width 获取或设置 Web 服务器控件的宽度。
7,上传图片时自动添加水印水印
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
using System.IO;
public partial class Default2 : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
if (FileUpload1.HasFile)
{
string fileContentType = FileUpload1.PostedFile.ContentType;
if (fileContentType == "image/bmp" || fileContentType == "image/gif" || fileContentType == "image/pjpeg")
{
string name = FileUpload1.PostedFile.FileName; // 客户端文件路径
FileInfo file = new FileInfo(name);
string fileName = file.Name; // 文件名称
string fileName_s = "s_" + file.Name; // 缩略图文件名称
string fileName_sy = "sy_" + file.Name; // 水印图文件名称(文字)
string fileName_syp = "syp_" + file.Name; // 水印图文件名称(图片)
string webFilePath = Server.MapPath("file/" + fileName); // 服务器端文件路径
string webFilePath_s = Server.MapPath("file/" + fileName_s); // 服务器端缩略图路径
string webFilePath_sy = Server.MapPath("file/" + fileName_sy); // 服务器端带水印图路径(文字)
string webFilePath_syp = Server.MapPath("file/" + fileName_syp); // 服务器端带水印图路径(图片)
string webFilePath_sypf = Server.MapPath("file/shuiyin.jpg"); // 服务器端水印图路径(图片)
if (!File.Exists(webFilePath))
{
try
{
FileUpload1.SaveAs(webFilePath); // 使用 SaveAs 方法保存文件
AddShuiYinWord(webFilePath, webFilePath_sy);
AddShuiYinPic(webFilePath, webFilePath_syp, webFilePath_sypf);
MakeThumbnail(webFilePath, webFilePath_s, 130, 130, "Cut"); // 生成缩略图方法
Label1.Text = "提示:文件“" + fileName + "”成功上传,并生成“" + fileName_s + "”缩略图,文件类型为:" + FileUpload1.PostedFile.ContentType + ",文件大小为:" + FileUpload1.PostedFile.ContentLength + "B";
}
catch (Exception ex)
{
Label1.Text = "提示:文件上传失败,失败原因:" + ex.Message;
}
}
else
{
Label1.Text = "提示:文件已经存在,请重命名后上传";
}
}
else
{
Label1.Text = "提示:文件类型不符";
}
}
}
public static void MakeThumbnail(string originalImagePath, string thumbnailPath, int width, int height, string mode)
{
System.Drawing.Image originalImage = System.Drawing.Image.FromFile(originalImagePath);
int towidth = width;
int toheight = height;
int x = 0;
int y = 0;
int ow = originalImage.Width;
int oh = originalImage.Height;
switch (mode)
{
case "HW"://指定高宽缩放(可能变形)
break;
case "W"://指定宽,高按比例
toheight = originalImage.Height * width / originalImage.Width;
break;
case "H"://指定高,宽按比例
towidth = originalImage.Width * height / originalImage.Height;
break;
case "Cut"://指定高宽裁减(不变形)
if ((double)originalImage.Width / (double)originalImage.Height > (double)towidth / (double)toheight)
{
oh = originalImage.Height;
ow = originalImage.Height * towidth / toheight;
y = 0;
x = (originalImage.Width - ow) / 2;
}
else
{
ow = originalImage.Width;
oh = originalImage.Width * height / towidth;
x = 0;
y = (originalImage.Height - oh) / 2;
}
break;
default:
break;
}
//新建一个bmp图片
System.Drawing.Image bitmap = new System.Drawing.Bitmap(towidth, toheight);
//新建一个画板
System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap);
//设置高质量插值法
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;
//设置高质量,低速度呈现平滑程度
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
//清空画布并以透明背景色填充
g.Clear(System.Drawing.Color.Transparent);
//在指定位置并且按指定大小绘制原图片的指定部分
g.DrawImage(originalImage, new System.Drawing.Rectangle(0, 0, towidth, toheight),
new System.Drawing.Rectangle(x, y, ow, oh),
System.Drawing.GraphicsUnit.Pixel);
try
{
//以jpg格式保存缩略图
bitmap.Save(thumbnailPath, System.Drawing.Imaging.ImageFormat.Jpeg);
}
catch (System.Exception e)
{
throw e;
}
finally
{
originalImage.Dispose();
bitmap.Dispose();
g.Dispose();
}
}
protected void AddShuiYinWord(string Path, string Path_sy)
{
string addText = "测试水印";
System.Drawing.Image image = System.Drawing.Image.FromFile(Path);
System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(image);
g.DrawImage(image, 0, 0, image.Width, image.Height);
System.Drawing.Font f = new System.Drawing.Font("Verdana", 16);
System.Drawing.Brush b = new System.Drawing.SolidBrush(System.Drawing.Color.Blue);
g.DrawString(addText, f, b, 15, 15);
g.Dispose();
image.Save(Path_sy);
image.Dispose();
}
/**////
/// 在图片上生成图片水印
///
/// 原服务器图片路径
/// 生成的带图片水印的图片路径
/// 水印图片路径
protected void AddShuiYinPic(string Path, string Path_syp, string Path_sypf)
{
System.Drawing.Image image = System.Drawing.Image.FromFile(Path);
System.Drawing.Image copyImage = System.Drawing.Image.FromFile(Path_sypf);
System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(image);
g.DrawImage(copyImage, new System.Drawing.Rectangle(image.Width - copyImage.Width, image.Height - copyImage.Height, copyImage.Width, copyImage.Height), 0, 0, copyImage.Width,copyImage.Height, System.Drawing.GraphicsUnit.Pixel);
g.Dispose();
image.Save(Path_syp);
image.Dispose();
}
}