annotate README.imagemagick @ 109862:62b3728b6678

attempt at Changelog entry, see README.imagemagick
author Joakim <joakim@localhost.localdomain>
date Mon, 14 Jun 2010 23:45:08 +0200
parents 8e0241dfb81c
children d68f30f3aba2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
109852
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
1 This is the imagemagick branch of Emacs. Imagemagick can now be used
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
2 to load many new image formats, and also do useful transforms like
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
3 scaling and rotation.
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
4
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
5 This file will attempt to contain draft NEWS, Changelog and manual
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
6 entries for the new functionality.
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
7
109853
fe07c47cf7a7 merge and fixes
Joakim <joakim@localhost.localdomain>
parents: 109852
diff changeset
8 You might need to regenerate the configure scripts:
fe07c47cf7a7 merge and fixes
Joakim <joakim@localhost.localdomain>
parents: 109852
diff changeset
9 aclocal
fe07c47cf7a7 merge and fixes
Joakim <joakim@localhost.localdomain>
parents: 109852
diff changeset
10 automake
fe07c47cf7a7 merge and fixes
Joakim <joakim@localhost.localdomain>
parents: 109852
diff changeset
11 autoheader
fe07c47cf7a7 merge and fixes
Joakim <joakim@localhost.localdomain>
parents: 109852
diff changeset
12 autoconf
fe07c47cf7a7 merge and fixes
Joakim <joakim@localhost.localdomain>
parents: 109852
diff changeset
13 ./configure --with-imagemagick
fe07c47cf7a7 merge and fixes
Joakim <joakim@localhost.localdomain>
parents: 109852
diff changeset
14
fe07c47cf7a7 merge and fixes
Joakim <joakim@localhost.localdomain>
parents: 109852
diff changeset
15
fe07c47cf7a7 merge and fixes
Joakim <joakim@localhost.localdomain>
parents: 109852
diff changeset
16
109856
4baaa8ac0f74 image count
Joakim <joakim@localhost.localdomain>
parents: 109853
diff changeset
17 * TODO
109861
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
18 #B _ complete documentation drafts below
109856
4baaa8ac0f74 image count
Joakim <joakim@localhost.localdomain>
parents: 109853
diff changeset
19
109861
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
20 #B X fix inconsistencys with spelling of imagemagick in the src
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
21 #B X report number of images in image bundle types somehow
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
22 Works like for "gif" support. Thanks to Juri Linkov.
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
23 #B X probably add pdf to inhibited types
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
24 #B X inhibit types is defconst should probably be defcustom
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
25 #B _ decide what to do with some uncommitted imagemagick support
109852
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
26 functions for image size etc.
109861
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
27 #B _ Test with more systems
109856
4baaa8ac0f74 image count
Joakim <joakim@localhost.localdomain>
parents: 109853
diff changeset
28 Tested on Fedora 12 so far, and the libmagick that ships with it.
4baaa8ac0f74 image count
Joakim <joakim@localhost.localdomain>
parents: 109853
diff changeset
29 Ubuntu 8.04 was also tested, but it seems it ships a broken ImageMagick.
109861
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
30 #B X Also need some way to handle render methods that only work on newer ImageMagicks
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
31 Is handled by configure now
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
32
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
33 * Some nits from Stefan Monnier
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
34 I just took a quick look at the code and I see the following nits to fix:
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
35 #B _ obviously a merge will have to come with a good ChangeLog.
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
36 #B X also the merge will need to come with documentation. Maybe not in the
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
37 Texinfo form yet, but at least in the etc/NEWS with enough info that
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
38 describes the `scale' and other such arguments that someone can start
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
39 using them.
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
40 #B X the README talks about naming inconsistencies, I think these should be
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
41 fixed before a first commit (should be straightforward).
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
42
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
43 #B X the "let" in image.el should not be followed by a line break and the while
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
44 should be replaced by a dolist.
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
45
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
46 #B X the prototype of imagemagick_load_image has some odd indentation in ([[2010.06.14]])
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
47 its args, not sure what happened.
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
48 #B X a few lines in the C code break the 80columns limit.
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
49 #B X please use ANSI style function declarations rather than K&R for new code. ([[2010.06.14]])
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
50 #B X you can get rid of the prototypes by reordering the code. ([[2010.06.14]])
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
51 #B X the docstrings in DEFUN should not be indented (they'll display ([[2010.06.14]])
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
52 weirdly otherwise in C-h f).
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
53 #B X Some "{" are at the end of a for/if rather than on their own line. ([[2010.06.14]])
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
54 #B X why use "*( imtypes + i)" rather than "imtypes[i]"? ([[2010.06.14]])
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
55 #B X some "," lack a space after them. ([[2010.06.14]])
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
56 #B X several "=" and "==" lack spaces around them. ([[2010.06.14]])
109856
4baaa8ac0f74 image count
Joakim <joakim@localhost.localdomain>
parents: 109853
diff changeset
57
109852
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
58
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
59 * NEWS entry
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
60 ** ImageMagick support
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
61 It is now possible to use the Imagemagick library to load many new
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
62 image formats in Emacs.
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
63
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
64 To enable, use the following configure option:
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
65 --with-imagemagick
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
66
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
67 The new function (imagemagick-types) returns a list of image file
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
68 extensions that your installation of imagemagick supports.
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
69
109853
fe07c47cf7a7 merge and fixes
Joakim <joakim@localhost.localdomain>
parents: 109852
diff changeset
70 The function (imagemagick-register-types) will enable the imagemagick
109852
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
71 support for the extensions in imagemagick-types minus the types listed
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
72 in imagemagick-types-inhibit.
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
73
109861
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
74 imagemagick-types-inhibit has the value '(C HTML HTM TXT PDF) by default.
109852
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
75 This means imagemagick will be used also to load jpeg files, if you
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
76 have both jpeg and imagemagick libraries linked. Add 'JPG to
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
77 imagemagick-types-inhibit if you do not want this.
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
78
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
79 Images loaded with imagemagick will support a couple of new display
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
80 specifications:
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
81
109861
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
82 - :scale takes a geometry string as defined by ImageMagick:
109852
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
83
109861
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
84 scale%
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
85 scale-x%xscale-y%
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
86 width
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
87 xheight
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
88 widthxheight
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
89 widthxheight^
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
90 widthxheight!
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
91 widthxheight>
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
92 widthxheight<
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
93 area@
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
94 {size}{offset} {size}{+-}x{+-}y
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
95
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
96 See the ImageMagick manual for more information.
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
97
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
98 - :rotation specifies a rotation angle in degrees.
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
99
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
100 - :index specifies which image inside an image bundle file format, such
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
101 as TIFF or DJVM, to view.
109857
d7a20b755b64 configure support for MagickExportImagePixels and README
Joakim <joakim@localhost.localdomain>
parents: 109856
diff changeset
102
d7a20b755b64 configure support for MagickExportImagePixels and README
Joakim <joakim@localhost.localdomain>
parents: 109856
diff changeset
103 The image-metadata function can be used to retrieve the total number
109861
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
104 of images in an image bundle. This is simmilar to how GIF files work.
109857
d7a20b755b64 configure support for MagickExportImagePixels and README
Joakim <joakim@localhost.localdomain>
parents: 109856
diff changeset
105
d7a20b755b64 configure support for MagickExportImagePixels and README
Joakim <joakim@localhost.localdomain>
parents: 109856
diff changeset
106
109852
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
107 * Changelog entry
109861
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
108 2010-06-12 Joakim Verona <joakim@verona.se>
109862
62b3728b6678 attempt at Changelog entry, see README.imagemagick
Joakim <joakim@localhost.localdomain>
parents: 109861
diff changeset
109 * image.c: Add support for ImageMagick. When HAVE_IMAGEMAGICK is
62b3728b6678 attempt at Changelog entry, see README.imagemagick
Joakim <joakim@localhost.localdomain>
parents: 109861
diff changeset
110 defined:
62b3728b6678 attempt at Changelog entry, see README.imagemagick
Joakim <joakim@localhost.localdomain>
parents: 109861
diff changeset
111 (imagemagick_image_p): New function to test for ImageMagic img.
62b3728b6678 attempt at Changelog entry, see README.imagemagick
Joakim <joakim@localhost.localdomain>
parents: 109861
diff changeset
112 (imagemagick_load): New function to load ImageMagick img.
62b3728b6678 attempt at Changelog entry, see README.imagemagick
Joakim <joakim@localhost.localdomain>
parents: 109861
diff changeset
113 (imagemagick_load_image): New function, helper for imagemagick_load
62b3728b6678 attempt at Changelog entry, see README.imagemagick
Joakim <joakim@localhost.localdomain>
parents: 109861
diff changeset
114 (imagemagick-types): New function.
62b3728b6678 attempt at Changelog entry, see README.imagemagick
Joakim <joakim@localhost.localdomain>
parents: 109861
diff changeset
115 (Qimagemagick): New Lisp_object.
62b3728b6678 attempt at Changelog entry, see README.imagemagick
Joakim <joakim@localhost.localdomain>
parents: 109861
diff changeset
116 * image.el:
62b3728b6678 attempt at Changelog entry, see README.imagemagick
Joakim <joakim@localhost.localdomain>
parents: 109861
diff changeset
117 (imagemagick-types-inhibit): New var.
62b3728b6678 attempt at Changelog entry, see README.imagemagick
Joakim <joakim@localhost.localdomain>
parents: 109861
diff changeset
118 (imagemagick-register-types): New function.
62b3728b6678 attempt at Changelog entry, see README.imagemagick
Joakim <joakim@localhost.localdomain>
parents: 109861
diff changeset
119 * config.in, Makefile.in, configure.in
109852
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
120
e56f669f17ce initial imagemagick readme
Joakim <joakim@localhost.localdomain>
parents:
diff changeset
121 * Manual entry
109861
8e0241dfb81c cosmetics, and changing of defconst to defcustom
Joakim <joakim@localhost.localdomain>
parents: 109857
diff changeset
122 nothing yet, but the NEWS entry could be adapted.