鼠标光标的制作

OOo,TeX,KO,ABI,GIMP,Picasa,ProE,QCAD,Inkscape,Kicad,Eagle
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

鼠标光标的制作

#1

帖子 eexpress » 2006-08-06 1:15

第一种方法:

fvwm里面的设置。
CursorStyle TITLE front.xpm yellow black
TITLE:表示在标题栏的地方使用此光标。具体写法直接看 man fvwm 就是。很清晰的说明。
front.xpm:指定的光标文件。一般可以用png转换到xpm。然后在xpm文件里面加上光标热点就是。格式如下:
第4行修改,xpm就是一个字符索引的图片。大家都 less 看下。很好玩的方式。粗体是原文件基础上增加的热点的设置。如果没增加热点,缺省会以图片中心为热点的。
/* width height num_colors chars_per_pixel hot-spot */
" 14 14 3 1 1 1",
如果是想使用系统的现成光标,看 /usr/include/X11/cursorfont.h 文件里面的写法就是。把文件里面的 XC_ 前缀去掉,就是光标的名称。
后面的2种颜色是前景和背景,可以省略。

已经用这方法产生了巨大的光标。为了崽崽玩鼠标时候,让他看到清晰的光标。 :lol:

:em05

//--------------------------------------------------------------------------------------------------------------------------
第二种方法:

gnome主题的设置。直接建立一个目录 ~/.icons/xxxx/cursor。不过这种方式需要产生全部完整的光标,至少需要default光标。
使用xcursorgen从png文件产生一幅画或者多幅画(动态的图片)
配置文件是这样的:
$ cat zoom-out.in <----配置文件的格式,可以看 man xcursorgen
32 9 9 zoom-out.png
$ identify zoom-out.png
zoom-out.png PNG 38x48 32x42-6-6 DirectClass 6kb
$ xcursorgen zoom-out.in zoom-out <---按照配置文件产生了名叫 zoom-out 的光标文件
$ file zoom-out
zoom-out: GLS_BINARY_LSB_FIRST
然后要刷新缓冲(sudo ldconfig,实验中),重新登录。

:em03

那截图就不能截光标???
● 鸣学
头像
内存不足
论坛版主
帖子: 3277
注册时间: 2005-08-18 18:43
联系:

#2

帖子 内存不足 » 2006-08-06 11:25

为什么我這里就不行呢? 是否每个光标的png图片尺寸都要一样大小?
໌→ iCookie Gtk Theme
໌→DropPlusBluetheme
กรัก กรัก`菠萝
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#3

帖子 eexpress » 2006-08-06 11:30

taviso eexpress: i set mine in my .Xdefaults
taviso Xcursor.theme: whiteglass
● 鸣学
头像
内存不足
论坛版主
帖子: 3277
注册时间: 2005-08-18 18:43
联系:

#4

帖子 内存不足 » 2006-08-06 12:50

現在用一个现成的主题去修改 也可以。就是麻烦一点,所有图片都要改尺寸。
໌→ iCookie Gtk Theme
໌→DropPlusBluetheme
กรัก กรัก`菠萝
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#5

帖子 eexpress » 2006-08-06 13:47

改尺寸?不符合我的需求。我要先搞好fvwm的xpm的彩色光标问题。
● 鸣学
头像
内存不足
论坛版主
帖子: 3277
注册时间: 2005-08-18 18:43
联系:

#6

帖子 内存不足 » 2006-08-06 15:17

都作好了 开始的时候整个窗口的鼠标都变成我做的,但重启电脑后只有在输入密码回车后能看到一眼。
进入桌面就又变成系统默认的了
怎么才能应用?

代码: 全选

:~/.icons/default/cursors$ file *
00008160000006810000408080010102: GLS_BINARY_LSB_FIRST
028006030e0e7ebffc7f7070c0600140: GLS_BINARY_LSB_FIRST
03b6e0fcb3499374a867c041f52298f0: GLS_BINARY_LSB_FIRST
08e8e1c95fe2fc01f976f1e063a24ccd: GLS_BINARY_LSB_FIRST
1081e37283d90000800003c07f3ef6bf: GLS_BINARY_LSB_FIRST
14fef782d02440884392942c11205230: GLS_BINARY_LSB_FIRST
2870a09082c103050810ffdffffe0204: GLS_BINARY_LSB_FIRST
3085a0e285430894940527032f8b26df: GLS_BINARY_LSB_FIRST
3ecb610c1bf2410f44200f48c40d3599: GLS_BINARY_LSB_FIRST
4498f0e0c1937ffe01fd06f973665830: GLS_BINARY_LSB_FIRST
5c6cd98b3f3ebcb1f9c7f1c204630408: GLS_BINARY_LSB_FIRST
6407b0e94181790501fd1e167b474872: GLS_BINARY_LSB_FIRST
640fb0e74195791501fd1ed57b41487f: GLS_BINARY_LSB_FIRST
9081237383d90e509aa00f00170e968f: GLS_BINARY_LSB_FIRST
9d800788f1b08800ae810202380a0822: GLS_BINARY_LSB_FIRST
arrow:                            GLS_BINARY_LSB_FIRST
base_arrow_down:                  GLS_BINARY_LSB_FIRST
base_arrow_up:                    GLS_BINARY_LSB_FIRST
based_arrow_down:                 GLS_BINARY_LSB_FIRST
based_arrow_up:                   GLS_BINARY_LSB_FIRST
bd_double_arrow:                  GLS_BINARY_LSB_FIRST
bottom_left_corner:               GLS_BINARY_LSB_FIRST
bottom_right_corner:              GLS_BINARY_LSB_FIRST
bottom_side:                      GLS_BINARY_LSB_FIRST
bottom_tee:                       GLS_BINARY_LSB_FIRST
c7088f0f3e6c8088236ef8e1e3e70000: GLS_BINARY_LSB_FIRST
center_ptr:                       GLS_BINARY_LSB_FIRST
centre_ptr:                       GLS_BINARY_LSB_FIRST
circle:                           GLS_BINARY_LSB_FIRST
copy:                             GLS_BINARY_LSB_FIRST
cross:                            GLS_BINARY_LSB_FIRST
crossed_circle:                   GLS_BINARY_LSB_FIRST
crosshair:                        GLS_BINARY_LSB_FIRST
cross_reverse:                    GLS_BINARY_LSB_FIRST
d9ce0ab605698f320427677b458ad60b: GLS_BINARY_LSB_FIRST
diamond_cross:                    GLS_BINARY_LSB_FIRST
dnd-ask:                          GLS_BINARY_LSB_FIRST
dnd-copy:                         GLS_BINARY_LSB_FIRST
dnd-link:                         GLS_BINARY_LSB_FIRST
dnd-move:                         GLS_BINARY_LSB_FIRST
dnd-none:                         GLS_BINARY_LSB_FIRST
dotbox:                           GLS_BINARY_LSB_FIRST
dot_box_mask:                     GLS_BINARY_LSB_FIRST
double_arrow:                     GLS_BINARY_LSB_FIRST
draft_large:                      GLS_BINARY_LSB_FIRST
draft_small:                      GLS_BINARY_LSB_FIRST
draped_box:                       GLS_BINARY_LSB_FIRST
e29285e634086352946a0e7090d73106: GLS_BINARY_LSB_FIRST
fcf1c3c7cd4491d801f1e1c78f100000: GLS_BINARY_LSB_FIRST
fd_double_arrow:                  GLS_BINARY_LSB_FIRST
fleur:                            GLS_BINARY_LSB_FIRST
hand:                             GLS_BINARY_LSB_FIRST
hand1:                            GLS_BINARY_LSB_FIRST
hand2:                            GLS_BINARY_LSB_FIRST
h_double_arrow:                   GLS_BINARY_LSB_FIRST
help:                             GLS_BINARY_LSB_FIRST
icon:                             GLS_BINARY_LSB_FIRST
left_ptr:                         GLS_BINARY_LSB_FIRST
left_ptr_help:                    GLS_BINARY_LSB_FIRST
left_ptr_watch:                   GLS_BINARY_LSB_FIRST
left_side:                        GLS_BINARY_LSB_FIRST
left_tee:                         GLS_BINARY_LSB_FIRST
link:                             GLS_BINARY_LSB_FIRST
ll_angle:                         GLS_BINARY_LSB_FIRST
lr_angle:                         GLS_BINARY_LSB_FIRST
move:                             GLS_BINARY_LSB_FIRST
pencil:                           GLS_BINARY_LSB_FIRST
pirate:                           GLS_BINARY_LSB_FIRST
plus:                             GLS_BINARY_LSB_FIRST
question_arrow:                   GLS_BINARY_LSB_FIRST
right_ptr:                        GLS_BINARY_LSB_FIRST
right_side:                       GLS_BINARY_LSB_FIRST
right_tee:                        GLS_BINARY_LSB_FIRST
sb_down_arrow:                    GLS_BINARY_LSB_FIRST
sb_h_double_arrow:                GLS_BINARY_LSB_FIRST
sb_left_arrow:                    GLS_BINARY_LSB_FIRST
sb_right_arrow:                   GLS_BINARY_LSB_FIRST
sb_up_arrow:                      GLS_BINARY_LSB_FIRST
sb_v_double_arrow:                GLS_BINARY_LSB_FIRST
target:                           GLS_BINARY_LSB_FIRST
tcross:                           GLS_BINARY_LSB_FIRST
top_left_arrow:                   GLS_BINARY_LSB_FIRST
top_left_corner:                  GLS_BINARY_LSB_FIRST
top_right_corner:                 GLS_BINARY_LSB_FIRST
top_side:                         GLS_BINARY_LSB_FIRST
top_tee:                          GLS_BINARY_LSB_FIRST
ul_angle:                         GLS_BINARY_LSB_FIRST
ur_angle:                         GLS_BINARY_LSB_FIRST
v_double_arrow:                   GLS_BINARY_LSB_FIRST
watch:                            GLS_BINARY_LSB_FIRST
X_cursor:                         GLS_BINARY_LSB_FIRST
xterm:                            GLS_BINARY_LSB_FIRST
໌→ iCookie Gtk Theme
໌→DropPlusBluetheme
กรัก กรัก`菠萝
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#7

帖子 eexpress » 2006-08-06 15:19

big-cursor可以加大鼠标光标。
xcursor-themes有巨型光标。
oneko是变猫变狗的光标玩具。
● 鸣学
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#8

帖子 eexpress » 2006-08-06 15:22

.Xdefaults 里面加 Xcursor.theme: whiteglass
指向了/usr/share/icons/whiteglass

还有一个这个链接,不知道是不是缺省主题的设置 /etc/alternatives/x-cursor-theme

你那gnome里面的应该容易啊。放到~/.icons下面。鼠标指针那里选择不就可以了?
● 鸣学
头像
内存不足
论坛版主
帖子: 3277
注册时间: 2005-08-18 18:43
联系:

#9

帖子 内存不足 » 2006-08-06 15:33

for i in *.conf; do mv $i ${i/.conf/.in}; done

你还在自言自语啊 :evil:
໌→ iCookie Gtk Theme
໌→DropPlusBluetheme
กรัก กรัก`菠萝
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#10

帖子 eexpress » 2006-08-06 15:35

你这些数字文件是别人的吧。
03b6e0fcb3499374a867c041f52298f0

你应该问问那个ldconfig是怎么用的。说不定是产生这些数字文件,作图标缓冲的。
● 鸣学
头像
内存不足
论坛版主
帖子: 3277
注册时间: 2005-08-18 18:43
联系:

#11

帖子 内存不足 » 2006-08-06 15:39

:P 搞的有点乱
໌→ iCookie Gtk Theme
໌→DropPlusBluetheme
กรัก กรัก`菠萝
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#12

帖子 eexpress » 2006-08-06 15:48

我的反正已经解决了。

就是修改 .Xdefaults

! ---| X11 settings |--- {{{
Xcursor.theme: redglass
Xcursor.size: 64

现在都是巨型红色光标了。准备再加大到128。以及使用gnome的光标主题。
● 鸣学
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#13

帖子 eexpress » 2006-08-06 16:22

$ cat /etc/X11/cursors/redglass.theme
[Icon Theme]
Inherits=redglass

$ cat quake.cursor.in
128 63 63 quake.png
$ identify quake.png
quake.png PNG 96x96 96x96+0+0 DirectClass 7kb
$ xcursorgen quake.cursor.in quake
$ file quake
quake: GLS_BINARY_LSB_FIRST

/usr/share/icons/redglass/cursors$ sudo ln -s quake arrow
$ cat .Xdefaults |grep 'Xcursor.size'
Xcursor.size: 128
$ cat .Xdefaults |grep '^Xcursor.theme'
Xcursor.theme: Chameleon-Pearl-Large-0.5

实验证明。.Xdefaults里面修改的光标主题都有效。包括~/.icons下面的任意带cursor的目录,都可以设置成x鼠标光标。大小设置不能到128,只能到原有光标的最大尺寸。我就奇怪redglass那套光标,只有一个目录,哪里设置的一堆大小(在gnome-mouse-properties 里面看到了几种尺寸)。
● 鸣学
头像
内存不足
论坛版主
帖子: 3277
注册时间: 2005-08-18 18:43
联系:

#14

帖子 内存不足 » 2006-08-06 17:37

终于整明白了 要做自己的鼠标主题,首先创建一个文件夹 比如:
mkdir ~/.icons/xxxx/cursor

把准备好的图片放进去,然后建立配置文件
arrow.in 内容如下

代码: 全选

32 1 2 xxxxx.png 50
32是图片尺寸 1是x轴坐标焦点 2是y轴坐标焦点 xxxx.png是图片名称 50是?(不知道中文该怎么叫?如果是多张图片 这个值就是显示下一张图片的间隔)

$ xcursorgen arrow.in arrow 就可以产生一个光标了

如果每个光标只用一张图片 很快就可以完成,如果图片多的话将是一场艰巨的人物 :em31 (目前在做的主题一千多张图片)不过效果一流
໌→ iCookie Gtk Theme
໌→DropPlusBluetheme
กรัก กรัก`菠萝
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

#15

帖子 eexpress » 2006-08-06 17:43

难道你是先没加到~/.icons/目录?
● 鸣学
回复