Hunter的大杂烩 技术学习笔记

2013-10-30

c# webbrowser判断页面加载完毕淫计

Filed under: 技术话题 — hunter @ 10:28 pm

Webbrowser 控件的DocumentCompleted事件,对于异步加载的页面判断不是很靠谱,这个事件基本无法获得ajax加载完毕的时间点,所以会导致用读取document中的html时,数据还未加载完毕的可能。

我的做法是:

1. 等页面框架加载完毕后,调用execScript方法,将原页面中,在加载完毕后执行的某个js函数置换掉 (javascript中函数名称跟函数指针差不多)

(more…)

c# webbrowser控件设置cookie

Filed under: 技术话题 — hunter @ 10:15 pm

需要用到winapi

[DllImport(“wininet.dll”, CharSet = CharSet.Auto, SetLastError = true)]
public static extern bool InternetSetCookie(string lpszUrlName, string lbszCookieName, string lpszCookieData);
第一个参数是cookie针对的域名
InternetSetCookie(“www.qq.com”, “userid”, “10000”);

2013-10-11

PDF CMAP知识

Filed under: 技术话题 — hunter @ 12:20 pm

from:http://bbs.csdn.net/topics/340109816

PDF为了识别所有的字符,给每一个文字都赋予一个唯一的编码,叫CID。

然后又提供了不同的字体编码与CID的Map文件和CID和Unicode的Map文件。参照Resources\cmap\00_readme.pdf文件,就可以知道这些文件是什么。

一般的PDF文件中文字识别的方法应该是从PDF文件解析出来字体名称和文字编码后,从对应的CMap文件中找到该文字编码对应的CID。然后再根据CID从CID和Unicode的Map文件找到对应的Unicode。

PDF从页描述命令中,可以知道文字打印的位置与高度(字号),但它的宽度则必须取决于字型。除此之外,字型同时也决定了字码,因此需要说明一下PDF文件里的字型信息。字型信息是放在额外资源里(Pages或Page对象的Resources属性值),它本身是一个词典对象。以下为其相关的属性:(1) Type:后接名称对象,必须是Font(2) Subtype:后接的名称对象表示其字型型态,可能是Type0、Type1、MMType1、Type3、TrueType(3) ToUnicode:如果有的话,后接的串流对象表示用来转换成Unicode字码的CMap(后述)

(more…)

Powered by WordPress