通过系统剪贴板将HTML复制到Word,并保留原始格式
类html实用程序
{
//将HTML代码复制到Windows剪贴板,并确保它位于中
[dll import(' u;)]
static extern bool open clipboard(intptr hwnd newowner);
[dll import(' u;)]
static extern bool EmptyClipboard();
[dll import(' u;)]
static extern intptr setclipboarddata(uint uformat、intptr hmem);
[dll import(' u;)]
static extern bool close clipboard();
[dll import(' u;SetLastError=true)]
static extern uint registerclipboardformata(string lpsz format);
[dllimport ('kernel32.dll ',setlasterror=true)]
static extern intptr global lock(intptr hmem):
[dllimport ('kernel32.dll ',setlasterror=true)]
static extern uint globalsize(int ptr hmem):
[dllimport ('kernel32.dll ',setlasterror=true)]
static extern intptr global unlock(intptr hmem):
///摘要
///copy the html into clipboard
////摘要
///param name='html'/param
///returns/returns
static public bool copyhtmltoclipboard(string html)
{
uint cf _ html=register clipboardformata(' html format ');
Bool bResult=false
If (OpenClipboard)
{
If (EmptyClipboard())
{
byte[]bs=Sy(html);
intsize=mar(type of(byte))* bs . length;
Intptr ptr=mar(大小);
Mar(bs、0、ptr、bs)。Length);
int ptr hres=setclipboarddata(cf _ html,ptr);
close clipboard();
}
}
Return bResult
}
//根据Windows剪贴板单元格格式化HTML代码
public static string htmlclipboarddata(string html)
{
string builder sb=new string builder();
Encoding encoding=Encoding。UTF8(936);
Stringheader=@ '版本3360 1.0
StartHTML: { 0:000000 }
EndHTML: { 1:000000 }
start fragment : { 2:00000 }
EndFragment: { 3:000000 }
;不确定。
String HtmlPrefix=@ '!doctype html public ' '-//w 3 c//dtd html 4 . 0 transitional//en ' '
Html
头(电影)
meta http-equiv=content-type content=' ' text/html;Charset={0} ' '
/head
菩提
!- StartFragment -
;不确定。
HtmlPrefix=(HtmlPrefix,' GB 2312 ');
String HtmlSuffix=@ '!-end fragment-/body/html ';
//Get lengths of chunks
intheader length=encoding . getbytecount(header);
标头长度-=16;//extra formatting characters { 0333 6000000 }
int prefix length=encoding . getbytecount(html prefix);
inthtmllength=encoding . getbytecount(html);
ints uffix length=encoding . getbytecount(html suffix);
//Determine locations of chunks
Int StartHtml=HeaderLength
int start fragment=starth tml prefix length;
intend fragment=start fragment html length;
intend html=end fragment suffix length;
//Build the data
(header、starthtml、end html、start fragment、end fragment);
(HtmlPrefix);
(html);
(HtmlSuffix);
());
return();
}
}
呼叫:
string html=' pin put type=' text ' name=' test ' ABC/p ';
html=htm Lu(html);
htm Lu(html);
//then you can paste into word using wdpa parameter
Object dataType=Word。WdPa
Newa (ref nothing、ref nothing、ref nothing、ref nothing、ref datatype、ref nothing和ref nothing);中选择另一种天花板类型。
请看具体的实现
想要深入学习的学生可以加入QQ小组讨论。QQ讨论组:984370849 706564342
欢迎参加讨论。戴尔拥有高度完整的资源笔记共享。此外,还有IT行业的员工。在这里可以找到快速解决问题的方法。是的,我在等你。我将分享我们之间的经验。(大卫亚设)。
分享我们之间不同问题的解决办法。
1.《【怎么把网页转到word上】如何将HTML移至Word,一点教室(多安学院)》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《【怎么把网页转到word上】如何将HTML移至Word,一点教室(多安学院)》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/keji/2499018.html