男单 618

生活象筒装的卫生纸,开始的时候怎么扯都不觉得在转,后来转的越来越快。

Archive for the ‘linux’ Category

pdf文件自动剪裁(自动切白边)

without comments

可能用到的环境、工具:Ubuntu 10.04+TeXLive 2008+pdfcrop+CUPS打印驱动,用Windows的兄弟就不用看了,这些工具理论上在Windows下也有,但是还要另外装不少东西。

下面假设原文件(也就是打算切白边的文件)叫abc.pdf

  1. pdfcrop abc.pdf,默认会生成abc-crop.pdf文件,这个已经是切掉白边的了,要是你不嫌它大(或者它确实不大)的话,就完成了。
  2. 用阅读器(如evince)打开abc-crop.pdf,并通过CUPS打印到文件,打印时注意关闭所有和页面缩放有关的命令,并选中“使用文档的页面尺寸作为页面尺寸”。打印,完成。

说明:

  1. pdfcrop其实是TeXLive自带的。本质上是一个perl脚本。
  2. pdfcrop要调用gs(ghostscript)确定每页的白边大小。对于空白页,会报错,忽略即可。
  3. pdfcrop还可以在切的时候留若干像素,具体请–help。
  4. pdfcrop要调用pdftex以生成切白边后的文件。
  5. pdfcrop本质上(猜想,没有阅读源码)是先将abc.pdf展开成单页的pdf,调用gs切白边,再用tex文件直接调用pdf页面,最后用pdftex生成输出。
  6. pdfcrop直接生成的文件一般是原文件的20倍以上(本人测试的几个文件均是如此),虚拟打印到新的文件后,基本可以恢复到与原文件同样数量级的尺寸。
  7. 测试都是使用的内嵌字体的中英文PDF。扫描版的没试,估计够呛。

5月27日更新:
使用这个脚本PDF压缩脚本-Compress PDF,代替上面的第2步。简单,效果不错。

Written by amao

五月 25th, 2010 at 12:43 上午

Posted in linux, 软件

Tagged with , , ,

Android on Nokia N800

without comments

根据 http://talk.maemo.org/showthread.php?t=25736 这篇文章,将Android刷到N800上。需要注意两点:

1、作者用的是2G的SD卡,我自己用的是1G的SD卡,所以

sudo sfdisk -uM /dev/sdc
,1024,C
,1,L
,,
,,
这一步需要改一下参数。
2、刷Flash这步,我这里出错:Error claiming USB interface: Device or resource busy
需要参考http://forums.internettablettalk.com/showthread.php?t=33543&page=2这篇文章解决。

Written by amao

五月 19th, 2010 at 12:06 下午

Posted in linux

Tagged with ,

终于在ubuntu 9.10装上了nvidia显卡驱动

without comments

Sony VAIO VGN-Z系列的笔记本都是双显卡,需要使用软件切换。之前在我的Z25上多次尝试安装NV显卡驱动,论坛上能看到的方法都用过了,均没有成功。无论是源中的驱动还是官方的驱动,都不行,重起后黑屏。
今天用了 http://global-social.net/VGN-Z 这里的一个脚本,问题基本解决。
只是我在用那个脚本时,下载了官方驱动后,又进行了一个什么检测,需要从网上下载包,但是不知道什么原因没有成功,脚本退出。再次运行脚本,在测试过OS版本后,没有反应,只能中止。手工安装了官方驱动,设置了LCD亮度与Fn键的关联。

Written by amao

三月 8th, 2010 at 2:42 下午

Posted in linux

Tagged with , , ,

Mysql乱码问题(备忘)

without comments

升级网站的时候,php版本高了,mysql的版本也高了,再加上原来没经验,用的都是GBK,没用UTF8,数据库导过去经常乱码。
两次成功的经验如下。
先保证phpmyadmin中看到的字符是正确的,再在mysql_connect语句之后加一句mysql_query(“SET NAMES ‘GBK’”),差不多就可以了。

Written by amao

一月 16th, 2010 at 1:52 上午

Posted in linux, 软件

Sage Tutorial中文版

with 5 comments

Sage Tutorial是一份快速了解Sage的入门文档,花了两周多的时间将其翻译为中文。但是“Some more advanced mathematics”一节没有翻译,因为完全不熟悉这一节所涉及到的内容。

第一次翻译开源软件的技术文档,水平有限,希望各位多提意见,任何方面的都可以。如果没有大的问题,大概一周后会向Sage开发组提交。

源文件使用Sphinx管理,PDF文件是由自动转换而来的LaTeX文件编译的,因此其中很多格式不符合中文的习惯。所以请大家先以HTML文件为准,最后发布前,我会手工调整LaTeX文件后再编译。

Email: amao@ai7.org

相关内容:翻译Sage文档的准备工作

Sage Tutorial 中文版rst源文件

Sage Tutorial 中文版(HTML)

Sage Tutorial 中文版(PDF)

Written by amao

一月 9th, 2010 at 10:43 上午

Posted in linux, python, sage

Tagged with ,

Ubuntu 9.10下unzip的乱码问题

without comments

Ubuntu 9.10中unzip升级为6.0,结果原来的-O参数没有了,解压缩Win平台来的带中文文件名的文件时,会有乱码。Google,Baidu无果后,自行使用Python解决。

01 #!/usr/bin/python
02 #coding=utf8
03
04 import zipfile
05 import sys
06
07 if len(sys.argv)<2:
08     print u’punzip zipfilename’
09 else:
10     f=zipfile.ZipFile(sys.argv[1])
11     nlist=f.namelist()
12     for n in nlist:
13         m=unicode(n,’gb2312′).encode(‘utf8′)
14         file(m,’wb’).write(f.read(n))
15     f.close()

只有基本功能,解压缩到当前目录下,不能新建目录……
请自行修改。

Written by amao

一月 1st, 2010 at 5:56 下午

Posted in linux, python

Tagged with ,

用Imagemagick将PDF文件转为图片

without comments

convert -density 150  aaa.pdf aaa.png

-density 参数指定的是DPI,也就是分辩率。一般屏幕显示用72就足够了,150适用于大多数场合,300以上的分辩率就很高了。不清楚最高可以到多少。当然了,这些都只在原PDF是矢量的情况下才有比较好的效果,如果原PDF是点阵的,比如扫描的图书,那么更大的DPI造成的结果就是颗粒变大。

如果PDF有多页,那么上述命令会将所有的页都转出来,存成多个文件。如果只想转其中某几页,可以在PDF文件名后加页码范围,象这样:

convert -density 150  aaa.pdf[0-3,20-25] aaa.png

注意,convert都是从0计数的,也就是说Imagemagick把PDF文件的第一页叫作第0页。不管上面哪种情况,只要是转换多页,Imagemagick都会自动在原文件名中加序号,以0开始,连续编号,形如aaa-0.png、aaa-1.png、aaa-2.png……,而与原页码没有任何联系。

当然了,转换的时候,还可以指定-resize这些参数。

Written by amao

十一月 21st, 2009 at 11:05 下午

Posted in linux, 软件

Ubuntu下使用黑莓8310拨号上网

without comments

参考页面:

  1. http://bbs.maxpda.com/thread-327579-1-2.html
  2. http://bbs.maxpda.com/viewthread.php?tid=240390&page=1&extra=page%3D1#pid4918836
  3. http://forum.ubuntu.org.cn/viewtopic.php?f=116&t=215635&start=0
  4. http://hi.baidu.com/icej/blog/item/b5061ffa5a30229e58ee9064.html

综合以上页面的信息,考虑到相关软件的更新以及不同用户的需求,再整理一下。

1、用到的软件就是Berry4All,原名叫BBtether。到http://www.berry4all.com/下载压缩包。软件是用Python写的,因此不需要编译,但是需要安装相关的依赖库。

sudo apt-get install python libusb-dev ppp python-usb

以上4个包是必须装的,如果希望使用GUI界面,就还要安装wxgtk的库文件:

sudo apt-get install python-wxgtk2.8

因为在我的机子上wxgtk这个包没有装过,需要额外的43M空间,就没有安装,事实证明也不需要,用命令行足够了。

2、安装好依赖包之后,将Berry4All解压缩,默认有一个bbtether目录。进入bbtether目录下的conf目录,编辑att-conf文件:

将wap.cingular替换为cmnet,其他内容保持不变。

3、停掉已有的网卡:

sudo ifconfig eth0 down

eth0是第一块网卡的编号。可以用ifconfig命令查看当前活动的网卡,确认全部网卡都已经停掉之后,再进行下一步。

4、回到bbtether目录,使用下面的命令拨号:

sudo python bbtether.py att

如果是使用GUI界面,则运行berry4all.sh即可,在菜单中选择att网络。

5、如果一切正常,拨号成功后,最后会显示当前的IP和DNS地址。现在就可以上网了!产生流量后,也会有相应显示。

=====================================

注:

这些天用Ubuntu远多于Vista,特别是用VirtualBox虚拟了个XP之后。但是外出时上网的问题一直没有解决。根据Vista下用BB拨号经验,前天尝试在虚拟的XP中安装DM并拨号,一直没有成功,每次的错误信息还都不一样,搞到2点多,最后还是放弃了。今天突然想到应该直接搜索一下Linux+BB上网的信息……爽!

Written by amao

十一月 18th, 2009 at 11:50 下午

Posted in linux

Tagged with

Ubuntu下使用md5sum计算字符串的MD5值

without comments

echo -n string|md5sum

注:之前只会用md5sum计算文件的MD5值,想计算个字符串的MD5值,试了很多办法都不行,今天无意中看到。看来对Linux的软件哲学理解的还是不到位。

Written by amao

十一月 17th, 2009 at 11:22 下午

Posted in linux, 软件

Tagged with ,

Ubuntu下批量重命名

with one comment

以下命令将当前目录下所有文件文件名中的前缀“sm-”删除,也即原sm-ABC.jpg,改为ABC.jpg:
for i in *; do mv $i `echo $i | sed -e ’s/sm-//’`; done

btw:原来一直认为Ubuntu下的几个仿TotalCommander的软件都有这样那样的缺陷,现在才知道原来Linux不需要TotalCommander,默认的小工具非常好用,只有Win这种平台才需要TC。

Written by amao

十一月 1st, 2009 at 8:22 下午

Posted in linux

Tagged with