C#/VB.NET 创建图片超链接
超链接(Hyperlink)可以看做是一个“热点”,它可以从当前Web页定义的位置跳转到其他位置,包括当前页的某个位置、Internet、本地硬盘或局域网上的其他文件,甚至跳转到声音、图片等多媒体文件。浏览Web页是超链接最普遍的一种应用,通过超链接还可以获得不同形态的服务,如文件传输、资料查询、电子函件、远程访问等。那么可以直接在Word中添加超链接,当然你也可以选择对图片添加超链接。并且图片超链接更富有趣味性和设计感,更容易吸引读者增加点击率。本文将通过C#程序代码示例做详细介绍,并附上VB.NET代码供参考。下面是具体方法和步骤。
dll文件安装(3种方法)
1.通过NuGet安装dll(2种方法)
1.1可以在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“管理NuGet包”,然后搜索“Free Spire.Doc”,点击“安装”。等待程序安装完成。
1.2将以下内容复制到PM控制台安装。
Install-Package FreeSpire.Doc -Version 9.9.7
2.手动添加dll引用
可通过手动下载包到本地,然后解压,找到BIN文件夹下的Spire.Doc.dll。然后在Visual Studio中打开“解决方案资源管理器”,鼠标右键点击“引用”,“添加引用”,将本地路径BIN文件夹下的dll文件添加引用至程序。
代码思路
创建图片超链接时可参考如下步骤:
- 创建Document类的对象,并通过Document.LoadFromFile()方法加载Word文档。
添加文章段落并通过Image.FromFile()加载图像为DocPicture对象
- 然后通过paragraph.AppendHyperlink()方法对图片添加超链接
- 最后,调用doc.SaveToFile()方法保存文档
C#
using System;
using System.Drawing;
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields; namespace ConsoleApp6
{
class Program
{
static void Main(string[] args)
{
//加载文档
string input = "BlankTemplate.docx";
Document doc = new Document();
doc.LoadFromFile(input); Section section = doc.Sections[0];
//添加文章段落
Paragraph paragraph = section.AddParagraph();
//加载图像为DocPicture对象
Image image = Image.FromFile("Spire.Doc.png");
DocPicture picture = new DocPicture(doc);
//对段落添加图片超链接
picture.LoadImage(image);
paragraph.AppendHyperlink("https://www.e-iceblue.com/Introduce/word-for-net-introduce.html", picture, HyperlinkType.WebLink); //保存文档
string output = "CreateImageHyperlink.docx";
doc.SaveToFile(output, FileFormat.Docx);
VB.NET
Imports System
Imports System.Drawing
Imports Spire.Doc
Imports Spire.Doc.Documents
Imports Spire.Doc.Fields Namespace ConsoleApp6 Class Program Private Shared Sub Main(ByVal args() As String)
'加载文档
Dim input As String = "BlankTemplate.docx"
Dim doc As Document = New Document
doc.LoadFromFile(input)
Dim section As Section = doc.Sections(0)
'添加文章段落
Dim paragraph As Paragraph = section.AddParagraph
' 加载图像为DocPicture对象
Dim image As Image = Image.FromFile("Spire.Doc.png")
Dim picture As DocPicture = New DocPicture(doc)
'对段落添加图片超链接
picture.LoadImage(image)
paragraph.AppendHyperlink("https://www.e-iceblue.com/Introduce/word-for-net-introduce.html", picture, HyperlinkType.WebLink)
'保存文档
Dim output As String = "CreateImageHyperlink.docx"
doc.SaveToFile(output, FileFormat.Docx)
End Sub
End Class
End Namespace
效果图
注意事项
代码中生成的文档路径为的VS程序的Debug路径,如本次路径为:C:\Users\Tina\source\repos\ConsoleApp1\ConsoleApp1\bin\Debug ,文件路径也可自定义为其他路径。
C#/VB.NET 创建图片超链接的更多相关文章
- Office EXCEL 创建图片超链接打不开怎么办 Excel打开图片提示发生了意外错误怎么办
如下图所示,点击超链接提示无法打开指定的文件 如果使用Office打开,则提示发生了意外错误 你需要先把IE浏览器打开,这样就可以打开了,并非是图像的相对位置不正确导致的.
- C# 如何添加Word文本和图片超链接
超链接简单来讲就是内容链接,通过设置超链接可以实现对象与网页.站点之间的连接.链接目标可以是网页.图片.邮件地址.文件夹或者是应用程序.设置链接的对象可以是文本或者图片. 在以下内容中,我将介绍如何用 ...
- VB.NET 创建文件以及文件的读写(创建随机数)
创建文件 Dim strFile As String = String.Format("C:\ErrorLog.txt", DateTime.Today.ToString(&quo ...
- android96 内存创建图片副本,画画板
package com.itheima.copy; import android.os.Bundle; import android.app.Activity; import android.grap ...
- 使用js做创建图片及删除图片 若有什么不对或不完整的地方,请大家提出来,谢谢
首先我们要在<body>中创建一个按钮<button>来用作点击创建图片,在<button>中写一个点击事件(随便命名), 在创建一个<div>存放图片 ...
- Android简易实战教程--第二十九话《创建图片副本》
承接第二十八话加载大图片,本篇介绍如何创建一个图片的副本. 安卓中加载的原图是无法对其修改的,因为默认权限是只读的.但是通过创建副本,就可以对其做一些修改,绘制等了. 首先创建一个简单的布局.一个放原 ...
- 使用Visual Studio创建图片精灵(Image Sprite)——Web Essential
原文:Creating Image Sprite in Visual Studio - Web Essential 译者注:有关图片精灵的信息请参阅http://baike.baidu.com/vie ...
- OpenCV---Numpy数组的使用以及创建图片
一:对头像的所有像素进行访问,并UI图像进行像素取反 (一)for循环取反 import cv2 as cv import numpy as np def access_pixels(image): ...
- 前端1-----HTML了解,内联标签(图片,超链接锚点,超链接邮箱)
前端1-----HTML了解,内联标签(图片,超链接锚点,超链接邮箱) 一丶自定制B/S # -*-coding:utf-8-*- # Author:Ds import socket IP_PORT= ...
随机推荐
- Servlet的url-pattern配置
url匹配规则 1)精确配置 精确匹配是指<servlet-mapping>中配置的值必须与请求中的url完全精确匹配. <servlet-mapping> <servl ...
- 无需Flash实现图片裁剪——HTML5中级进阶
前言 图片裁剪上传,不仅是一个很贴合用户体验的功能,还能够统一特定图片尺寸,优化网站排版,一箭双雕. 需求就是那么简单,在浏览器里裁剪图片并上传到服务器. 我第一个想到的方法就是,将图片和裁剪参数(x ...
- CSS3 用border写 空心三角箭头 (两种写法)
之前一直在寻找这种空心三角箭头, 终于知道了原理! 自己记录一下,顺便分享给之前跟我一样想要的撸友们~ 第一种写法 利用常见的 after伪元素 <!DOCTYPE html> <h ...
- 【前端Talkking】CSS系列——CSS深入理解之line-height
1.写在前面 两个多周的时间没有写文章了,手好痒好痒,趁着公司在装修,从上周末到本周都在家办公,同时公司的项目并不紧急,于是抽着时间梳理了一下CSS中关于行高line-height的理解,今天发布出来 ...
- hdfs对文件的增删改查
源代码: pom.xml: <?xml version="1.0" encoding="UTF-8"?> <project xmlns=&qu ...
- Canvas 制作海报
HTML <template> <view class="content"> <view class="flex_row_c_c mod ...
- java中接口和抽象类有什么区别,举例!
2)接口和抽象类有什么区别?答:马克-to-win:抽象类里可以有实现的方法,接口里不能有,所以相对来讲各方面实现都简单(尤其动态方法调度).另外:类可以实现多个接口.反过来说,也正是抽象类一个致命伤 ...
- C2678 二进制“<”: 没有找到接受“const ***”类型的左操作数的运算符解决办法
正确代码如下:#include<iostream> #include<string> #include<map> using namespace std; /*仿函 ...
- box-shadow 阴影的高级用法,多个阴影叠加
box-shadow的这些用法你知道吗? $shadowH: ''; @for $i from 1 through 12 { $shadowH: #{$shadowH}, 0 ($i * 30px) ...
- Vue整合axios 插件方式
1 创建一个vue的项目 使用命令 vue create axios-vue 创建,可以什么都不用勾选 2 安装axios npm install axios --save 如果安装过程很慢的话,也可 ...