Day 3089 Adobe Acrobat XI(11)文字转曲

Adobe Acrobat XI调整了命令位置和面板布局,简单记录一下对PDF进行合层转曲的步骤:


adobe_acrobat_toolsmenu

1、打开要转曲的PDF后,在右上角点击「工具」显示工具面板,然后单击右上角的小菜单按钮,将「印刷制作」打勾(透明度拼合工具在这里面)。

2、打开「页面」-「水印」-「添加水印」为页面添加空白水印,需要调整的参数为:「来源」选择「文本」,并在「文本」右边的文本框内输入一个空格,然后在下面的「外观」中将「不透明度」设置为50%。

3、打开「印刷制作」-「拼合器预览」将文档合层,需要调整的参数为:「光栅/矢量平衡」设置为100,「线状图和文本分辨率」设置为2400ppi,「渐变和网格分辨率」设置为300ppi,勾选「将所有文本转换为轮廓」,最下方「拼合器生成图像的压缩设置」中将「颜色」的「质量」设置为需要的质量,右边「应用到PDF」选择「文档中的所有页面」(或者设置为要转曲的页面范围)。

4、第三步单击「应用」后,会提示「本操作无法撤销」,点击「是」,待文档合层完毕后记得检查文字是否已转曲(以前是文本的区域无法再用「文本和图像选择工具」adobe_acrobat_text_image_selector的文本光标选择即成功),确认无误后,建议对文件进行另存,因为这个操作无法用Ctrl+Z撤销,如果覆盖源文件将不可恢复。

Day 3083 IE6 UTF-8 URL的不完全支持导致浏览出现问题

某办公室的老师把我叫去看一个奇怪的问题:在昵图网搜索三个字的关键词,例如「西红柿」,第一页可以正常浏览,但直接单击「下一页」的时候就会变成这样:

ie6_incomplete_utf8_support

此时的页面链接为 http://soso.nipic.com/?q=西红柿&sort=&from=1&page=2 ,而前一页的链接为 http://soso.nipic.com/?q=%E8%A5%BF%E7%BA%A2%E6%9F%BF&sort=&from=1 ,其差别除了换页的page外,主要在于是否对关键词进行了编码。

经过一番搜索,发现可能是IE6对UTF-8编码的不完全支持所致,具体似乎是在处理奇数个中文字时会截断最后一个字节,于是导致以上问题的出现,修理方法是在服务器端对关键字进行编码,而在客户端的唯一解则是对IE进行升级。

或许有人会说更换其它浏览器也能解决问题,但经过试验得出的结论很奇怪:Chrome360极速浏览器等Webkit内核的浏览器在升级IE6前一样会出现错误,而Gecko内核的FireFox则没有这个问题,但同样是Webkit内核的淘宝浏览器则不存在这个问题。That’s weird.

corrupt_help_message_of_nipic-com

顺便吐个槽:昵图网官方QQ这种诡异的帮助信息是什么人才能写得出来的……

Day 3066 从硬盘安装Ubuntu

先说点看起来无关紧要的题外话:

办公室里有一台多年前的Canon LBP3200打印机、2台32位Windows的机器和2台64位系统的Windows机器。由于打印机已停产多年,其Windows驱动只有32位版本,且经多方搜索及向客服咨询,官方并无推出64位驱动的计划,导致其中主任使用的一台64位系统的机器要打印东西,只能将文件传给32位机器后打开打印,很不方便,于是想办法架设打印服务器。

搜索后,发现USB口打印服务器基本为¥200元起,而本单位一向比较抠门,能将就的事情从不舍得花钱,况且经过搜索支持这款打印机的打印服务器价格更是高于¥300元。思前想后突然想到办公室有一台弃置多年的富士通LifeBook S6010,考虑将其改装成打印服务器,其主要配置为:Pentium III M 1.0Ghz、512MB内存、30GB硬盘、集成显卡(显存48MB)。

由于Windows Server安装打印服务器进行集中共享其实与单机共享并无二致,仍然需要准备各种版本的驱动,外加上述该机配置跑Windows Server明显带不动,最后决定装Ubuntu安装CUPS打印服务器进行实验。

但一开始就出现了问题:这台机器由于型号过老,不仅不支持USB-HDD、USB-CDROM等现代机器上常用的USB启动方式,连仅有的USB软驱模拟也无法适配手头的U盘,所以从U盘启动直接安装这条路算是堵死了。好不容易翻出一张深度XP那个年代的PE启动盘,但Linux和Windows 7以上的系统不同,并没有全自动的工具将镜像释放到磁盘后再进行安装,怎么办好呢?

最后的解决方案来自这篇文章,将Ubuntu的ISO释放到硬盘上的一个小分区,然后用Grub4DOS进行引导,将ISO挂载后模拟光驱启动,具体步骤如下(假定磁盘上的数据全都不要了):

1、使用任何分区工具将磁盘清空,并创建一个1.5GB左右的小FAT32分区,用于存放Ubuntu安装镜像(记得将这个分区设置为活动分区),剩余空间暂时留空。

2、下载Grub4DOSbootice,将Grub4DOS中的grldr和menu.lst放在刚刚创建的分区的根目录下。

3、启动bootice,在「目标磁盘」中选择好本机的硬盘,然后点击「主引导记录」,将Grub4DOS安装到硬盘中。

4、编辑menu.lst(需要使用支持UNIX换行符的文本编辑器,Windows下例如Notepad++、EditPlus等),在末尾另起一行加入以下内容(其中Ubuntu的ISO文件名请对照实际情况自行修改):

title Install Ubuntu
find –set-root /ubuntu-11.04-desktop-i386.iso
map /ubuntu-11.04-desktop-i386.iso (0xff) || map –mem /ubuntu-11.04-desktop-i386.iso (0xff)
map –hook
root (0xff)
kernel /casper/vmlinuz file=/cdrom/preseed/ubuntu.seed noprompt boot=casper only-ubiquity iso-scan/filename=/ubuntu-11.04-desktop-i386.iso quiet splash —
initrd /casper/initrd.lz

5、重新启动,在Grub4DOS引导选单选择最后一项Install Ubuntu即可。

6、当Ubuntu环境启动完成后,先不要急着安装系统,先按Ctrl+Alt+F1进入终端,输入以下命令:

sudo umount -l /isodevice

7、按正常步骤安装Ubuntu即可。

2014-07-05后记:由于室内陈设的问题,加之CUPS方案同样无法解决客户机需要安装Native driver的问题,故最后没有做成任何事情。

Day 3038 虚拟网呼叫转移

家里的电话在集团虚拟网下,最近因临时有事需要设置无条件呼叫转移,但按以往的*57*目标号码#总是忙音,#57#又只会冒一个「置」字的声音(这个仍然不知道怎么回事),一头雾水。

仔细上网搜了一下才发现忘了一个细节:既然虚拟网拨号需要先拨0转外线,那么设置呼叫转移时对于外线号码也要加上这个0,例如:要无条件呼转至138001380000,需要键入的指令是*57*013800138000。

感谢此链接下的回答。

Day 3009 支付宝「手机支付网站」的坑

alipay_mobile_unsupported_dummy_payment

为适应业务发展需要,单位的网站要开手机版(话说这种形式好像已经是上世纪的东西了),其中有一个功能是在线购买产品。由于这个手机版要放在微信中,原本应该与微信支付对接,但微信现在好牛,2万元的保证金让领导觉得没挣钱先烧钱不值,于是转而采用没有预付金的支付宝手机支付功能。

因为有sample code,集成过程还算顺利,但尝试支付过几次后,发现采用手机网银支付时,最后跳回商户网站(即本单位的手机网站)时只会冒出一行「抱歉,网银充值失败」,而与此同时该交易却已经支付成功,虽然异步通知已经将订单状态修改为「已付款等待发货」,但客户会卡在出错页面上,以为没有支付成功。

经过与支付宝的在线技术客服与商家电话客服的沟通,最终弄明白了一个事实:「手机支付网站」这个产品根本不支持手机网银支付,虽然所有的后台流程一切正常,但前台会因为签名验证失败而出错。

——那你把手机网银支付的选项放在前台干啥!

Day 3000 将数据文件写入普通卡式录音带

标题有些夸大,并且由于设备不全,试验其实也没有做完,描述一遍好了。

小时候接触过从有钱亲戚家淘汰下来的裕兴电脑学习机,或者称呼其正式名称,「裕兴新世纪普及型电脑」,记得型号是F型,已经处于学习机的中后期,可以使用真正的3.5英寸软盘进行程序存储,但当时听说早期型号的学习机可以向普通录音带存储程序,感觉很神奇,却始终未能得见。

许多年以后,有关FC学习机的记忆大多已经淡忘,却一直对普通录音带存储数据念念不忘。最近有点闲,在Google上搜索,终于找到一点可以用现成编码方式组合解决方案的线索,现总结如下:

继续阅读 “Day 3000 将数据文件写入普通卡式录音带”

Day 2994 [转]发几张早期国产学习机的图片

原文作者:maxzhou88,地址:http://hi.baidu.com/maxzhou88/item/5113f52f87ac42f851fd875e

就凭百度空间的德行,文章不知道哪天就没了,上次看到这篇文章是很久之前,今天索性手工备份一下。

2015年11月15日更新:添加小霸王抄袭飞梭电子BASIC语言证据视频备份(顺便鄙视一下搜狐影音,MP4改个扩展名就变成自己的格式了),另,百度空间还真没了……233

继续阅读 “Day 2994 [转]发几张早期国产学习机的图片”

Day 2986 PHPCMS v9 前台上传文件提示undefined

最近要给单位的网站增加一个前台上传的功能,原本PHPCMS v9没有单文件上传的字段,后来根据这个帖子中提供的资源成功添加,对字段作者表示感谢(同时直接在此进行备份:点击此处下载UTF8版本.,GBK版本用户手工转一下码就可以)。

由于上传功能使用了表单向导,于是将该字段移植到了module formguide的fields里,但是每次上传文件都出现一个alert,内容只有简单的「undefined」一行,虽然文件正常上传了,但上传的dialog里没有成功上传的项目,表单中也不能出现上传的文件路径,打开PHP错误日志也一无所获,经过一番查找,最后用这个帖子的14楼回复解决了问题:

确定网站设置里是否有你上传的文件格式。如果没有,请增加,就不会出现错误了。

将所需的格式添加到设置-站点管理-对应的站点设置中【附件设置】允许上传的文件格式里,确实可以上传了。

追根溯源,在phpcms\modules\attachment\attachments.php中大约47行起的function swfupload()中有这样一路判断:

$site_allowext = $site_setting[‘upload_allowext’];
$allowext_array = explode(‘|’,$site_allowext);
if(!in_array($attachment->uploadedfiles[0][‘fileext’],$allowext_array)) exit(‘0’);

由此可见站点允许上传的文件类型是受站点设置中的附件设置控制的。

关于出现undefined的alert这个问题还有另外一个解决方案,似乎出现的原因是只有IE可以正常上传,其它浏览器(包括以IE为核心的各类浏览器Shell)都出现undefined的问题,一并附上解决方案:

仍然是phpcms\modules\attachment\attachments.php中的function swfupload(),在//判断是否登录 下面,将:

if(empty($this->userid))

修改为

if(empty($_POST[‘userid’])

即可。