fotolab 0.21.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,399 @@
1
+ Metadata-Version: 2.1
2
+ Name: fotolab
3
+ Version: 0.21.1
4
+ Summary: A console program that manipulate images.
5
+ Keywords: photography,photo
6
+ Author-email: Kian-Meng Ang <kianmeng@cpan.org>
7
+ Requires-Python: >=3.9
8
+ Description-Content-Type: text/markdown
9
+ Classifier: Development Status :: 3 - Alpha
10
+ Classifier: Environment :: Console
11
+ Classifier: License :: OSI Approved :: GNU Affero General Public License v3 or later (AGPLv3+)
12
+ Classifier: Programming Language :: Python :: 3 :: Only
13
+ Classifier: Programming Language :: Python :: 3.9
14
+ Classifier: Programming Language :: Python :: 3.10
15
+ Classifier: Programming Language :: Python :: 3.11
16
+ Classifier: Programming Language :: Python :: 3.12
17
+ Classifier: Programming Language :: Python :: 3.13
18
+ Classifier: Programming Language :: Python
19
+ Requires-Dist: pillow
20
+ Project-URL: Changelog, https://github.com/kianmeng/fotolab/blob/master/CHANGELOG.md
21
+ Project-URL: Issues, https://github.com/kianmeng/fotolab/issues
22
+ Project-URL: Source, https://github.com/kianmeng/fotolab
23
+
24
+ # fotolab
25
+
26
+ A console program to manipulate photos.
27
+
28
+ ## Installation
29
+
30
+ Stable version From PyPI using `pipx`:
31
+
32
+ ```console
33
+ pipx install fotolab
34
+ ```
35
+
36
+ Stable version From PyPI using `pip`:
37
+
38
+ ```console
39
+ python -m pip install fotolab
40
+ ```
41
+
42
+ Upgrade to latest stable version:
43
+
44
+ ```console
45
+ python3 -m pip install fotolab --upgrade
46
+ ```
47
+
48
+ Latest development version from GitHub:
49
+
50
+ ```console
51
+ python -m pip install -e git+https://github.com/kianmeng/fotolab.git
52
+ ```
53
+
54
+ ## Usage
55
+
56
+ ```console
57
+ fotolab -h
58
+ ```
59
+
60
+ <!--help !-->
61
+
62
+ ```console
63
+ usage: fotolab [-h] [-o] [-op] [-od OUTPUT_DIR] [-q] [-v] [-d] [-V]
64
+ {animate,auto,border,contrast,info,resize,rotate,montage,sharpen,watermark,env} ...
65
+
66
+ A console program to manipulate photos.
67
+
68
+ website: https://github.com/kianmeng/fotolab
69
+ changelog: https://github.com/kianmeng/fotolab/blob/master/CHANGELOG.md
70
+ issues: https://github.com/kianmeng/fotolab/issues
71
+
72
+ positional arguments:
73
+ {animate,auto,border,contrast,info,resize,rotate,montage,sharpen,watermark,env}
74
+ sub-command help
75
+ animate animate an image
76
+ auto auto adjust (resize, contrast, and watermark) a photo
77
+ border add border to image
78
+ contrast contrast an image
79
+ info info an image
80
+ resize resize an image
81
+ rotate rotate an image
82
+ montage montage a list of image
83
+ sharpen sharpen an image
84
+ watermark watermark an image
85
+ env print environment information for bug reporting
86
+
87
+ options:
88
+ -h, --help show this help message and exit
89
+ -o, --overwrite overwrite existing image
90
+ -op, --open open the image using default program (default: 'False')
91
+ -od, --output-dir OUTPUT_DIR
92
+ set default output folder (default: 'output')
93
+ -q, --quiet suppress all logging
94
+ -v, --verbose show verbosity of debugging log, use -vv, -vvv for more details
95
+ -d, --debug show debugging log and stacktrace
96
+ -V, --version show program's version number and exit
97
+ ```
98
+
99
+ <!--help !-->
100
+
101
+ ### fotolab animate
102
+
103
+ ```console
104
+ fotolab animate -h
105
+ ```
106
+
107
+ <!--help-animate !-->
108
+
109
+ ```console
110
+ usage: fotolab animate [-h] [-f FORMAT] [-d DURATION] [-l LOOP]
111
+ IMAGE_FILENAMES [IMAGE_FILENAMES ...]
112
+
113
+ positional arguments:
114
+ IMAGE_FILENAMES set the image filenames
115
+
116
+ options:
117
+ -h, --help show this help message and exit
118
+ -f, --format FORMAT set the image format (default: 'gif')
119
+ -d, --duration DURATION
120
+ set the duration in milliseconds (default: '2500')
121
+ -l, --loop LOOP set the loop cycle (default: '0')
122
+ ```
123
+
124
+ <!--help-animate !-->
125
+
126
+ ### fotolab auto
127
+
128
+ ```console
129
+ fotolab auto -h
130
+ ```
131
+
132
+ <!--help-auto !-->
133
+
134
+ ```console
135
+ usage: fotolab auto [-h] IMAGE_FILENAMES [IMAGE_FILENAMES ...]
136
+
137
+ positional arguments:
138
+ IMAGE_FILENAMES set the image filename
139
+
140
+ options:
141
+ -h, --help show this help message and exit
142
+ ```
143
+
144
+ <!--help-auto !-->
145
+
146
+ ### fotolab border
147
+
148
+ ```console
149
+ fotolab border -h
150
+ ```
151
+
152
+ <!--help-border !-->
153
+
154
+ ```console
155
+ usage: fotolab border [-h] [-c COLOR] [-w WIDTH] [-wt WIDTH] [-wr WIDTH]
156
+ [-wb WIDTH] [-wl WIDTH]
157
+ IMAGE_FILENAMES [IMAGE_FILENAMES ...]
158
+
159
+ positional arguments:
160
+ IMAGE_FILENAMES set the image filenames
161
+
162
+ options:
163
+ -h, --help show this help message and exit
164
+ -c, --color COLOR set the color of border (default: 'black')
165
+ -w, --width WIDTH set the width of border (default: '10')
166
+ -wt, --width-top WIDTH
167
+ set the width of top border (default: '0')
168
+ -wr, --width-right WIDTH
169
+ set the width of right border (default: '0')
170
+ -wb, --width-bottom WIDTH
171
+ set the width of bottom border (default: '0')
172
+ -wl, --width-left WIDTH
173
+ set the width of left border (default: '0')
174
+ ```
175
+
176
+ <!--help-border !-->
177
+
178
+ ### fotolab contrast
179
+
180
+ ```console
181
+ fotolab contrast -h
182
+ ```
183
+
184
+ <!--help-contrast !-->
185
+
186
+ ```console
187
+ usage: fotolab contrast [-h] [-c CUTOFF] IMAGE_FILENAMES [IMAGE_FILENAMES ...]
188
+
189
+ positional arguments:
190
+ IMAGE_FILENAMES set the image filename
191
+
192
+ options:
193
+ -h, --help show this help message and exit
194
+ -c, --cutoff CUTOFF set the percentage of lightest or darkest pixels to
195
+ discard from histogram (default: '1')
196
+ ```
197
+
198
+ <!--help-contrast !-->
199
+
200
+ ### fotolab info
201
+
202
+ ```console
203
+ fotolab info -h
204
+ ```
205
+
206
+ <!--help-info !-->
207
+
208
+ ```console
209
+ usage: fotolab info [-h] [-s] IMAGE_FILENAME
210
+
211
+ positional arguments:
212
+ IMAGE_FILENAME set the image filename
213
+
214
+ options:
215
+ -h, --help show this help message and exit
216
+ -s, --sort show image info by sorted field name
217
+ ```
218
+
219
+ <!--help-info !-->
220
+
221
+ ### fotolab rotate
222
+
223
+ ```console
224
+ fotolab rotate -h
225
+ ```
226
+
227
+ <!--help-rotate !-->
228
+
229
+ ```console
230
+ usage: fotolab rotate [-h] IMAGE_FILENAMES [IMAGE_FILENAMES ...]
231
+
232
+ positional arguments:
233
+ IMAGE_FILENAMES set the image filenames
234
+
235
+ options:
236
+ -h, --help show this help message and exit
237
+ ```
238
+
239
+ <!--help-rotate !-->
240
+
241
+ ### fotolab montage
242
+
243
+ ```console
244
+ fotolab montage -h
245
+ ```
246
+
247
+ <!--help-montage !-->
248
+
249
+ ```console
250
+ usage: fotolab montage [-h] IMAGE_FILENAMES [IMAGE_FILENAMES ...]
251
+
252
+ positional arguments:
253
+ IMAGE_FILENAMES set the image filenames
254
+
255
+ options:
256
+ -h, --help show this help message and exit
257
+ ```
258
+
259
+ <!--help-montage !-->
260
+
261
+ ### fotolab resize
262
+
263
+ ```console
264
+ fotolab resize -h
265
+ ```
266
+
267
+ <!--help-resize !-->
268
+
269
+ ```console
270
+ usage: fotolab resize [-h] [-c] [-l CANVAS_COLOR] [-W WIDTH | -H HEIGHT]
271
+ IMAGE_FILENAMES [IMAGE_FILENAMES ...]
272
+
273
+ positional arguments:
274
+ IMAGE_FILENAMES set the image filename
275
+
276
+ options:
277
+ -h, --help show this help message and exit
278
+ -c, --canvas paste image onto a larger canvas
279
+ -l, --canvas-color CANVAS_COLOR
280
+ the color of the extended larger canvas(default:
281
+ 'black')
282
+ -W, --width WIDTH set the width of the image (default: '600')
283
+ -H, --height HEIGHT set the height of the image (default: '277')
284
+ ```
285
+
286
+ <!--help-resize !-->
287
+
288
+ ### fotolab sharpen
289
+
290
+ ```console
291
+ fotolab sharpen -h
292
+ ```
293
+
294
+ <!--help-sharpen !-->
295
+
296
+ ```console
297
+ usage: fotolab sharpen [-h] [-r RADIUS] [-p PERCENT] [-t THRESHOLD]
298
+ IMAGE_FILENAMES [IMAGE_FILENAMES ...]
299
+
300
+ positional arguments:
301
+ IMAGE_FILENAMES set the image filenames
302
+
303
+ options:
304
+ -h, --help show this help message and exit
305
+ -r, --radius RADIUS set the radius or size of edges (default: '1')
306
+ -p, --percent PERCENT
307
+ set the amount of overall strength of sharpening
308
+ effect (default: '100')
309
+ -t, --threshold THRESHOLD
310
+ set the minimum brightness changed to be sharpened
311
+ (default: '3')
312
+ ```
313
+
314
+ <!--help-sharpen !-->
315
+
316
+ ### fotolab watermark
317
+
318
+ ```console
319
+ fotolab watermark -h
320
+ ```
321
+
322
+ <!--help-watermark !-->
323
+
324
+ ```console
325
+ usage: fotolab watermark [-h] [-t WATERMARK_TEXT]
326
+ [-p {top-left,top-right,bottom-left,bottom-right}]
327
+ [-pd PADDING] [-fs FONT_SIZE] [-fc FONT_COLOR]
328
+ [-ow OUTLINE_WIDTH] [-oc OUTLINE_COLOR] [--camera]
329
+ [-l]
330
+ IMAGE_FILENAMES [IMAGE_FILENAMES ...]
331
+
332
+ positional arguments:
333
+ IMAGE_FILENAMES set the image filenames
334
+
335
+ options:
336
+ -h, --help show this help message and exit
337
+ -t, --text WATERMARK_TEXT
338
+ set the watermark text (default: 'kianmeng.org')
339
+ -p, --position {top-left,top-right,bottom-left,bottom-right}
340
+ set position of the watermark text (default: 'bottom-
341
+ left')
342
+ -pd, --padding PADDING
343
+ set the padding of the watermark text relative to the
344
+ image (default: '15')
345
+ -fs, --font-size FONT_SIZE
346
+ set the font size of watermark text (default: '12')
347
+ -fc, --font-color FONT_COLOR
348
+ set the font color of watermark text (default:
349
+ 'white')
350
+ -ow, --outline-width OUTLINE_WIDTH
351
+ set the outline width of the watermark text (default:
352
+ '2')
353
+ -oc, --outline-color OUTLINE_COLOR
354
+ set the outline color of the watermark text (default:
355
+ 'black')
356
+ --camera use camera metadata as watermark
357
+ -l, --lowercase lowercase the watermark text
358
+ ```
359
+
360
+ <!--help-watermark !-->
361
+
362
+ ### fotolab env
363
+
364
+ ```console
365
+ fotolab env -h
366
+ ```
367
+
368
+ <!--help-env !-->
369
+
370
+ ```console
371
+ usage: fotolab env [-h]
372
+
373
+ options:
374
+ -h, --help show this help message and exit
375
+ ```
376
+
377
+ <!--help-env !-->
378
+
379
+ ## Copyright and License
380
+
381
+ Copyright (C) 2024 Kian-Meng Ang
382
+
383
+ This program is free software: you can redistribute it and/or modify it under
384
+ the terms of the GNU Affero General Public License as published by the Free
385
+ Software Foundation, either version 3 of the License, or (at your option) any
386
+ later version.
387
+
388
+ This program is distributed in the hope that it will be useful, but WITHOUT ANY
389
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
390
+ PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.
391
+
392
+ You should have received a copy of the GNU Affero General Public License along
393
+ with this program. If not, see <https://www.gnu.org/licenses/>.
394
+
395
+ The fish logo used in the documentation generated by Sphinx is a public domain
396
+ drawing of male freshwater phase [Sockeye (red) salmon (Oncorhynchus nerka)]
397
+ (https://en.wikipedia.org/w/index.php?oldid=1186575702) from
398
+ <https://commons.wikimedia.org/entity/M2787002>.
399
+
@@ -0,0 +1,19 @@
1
+ fotolab/__init__.py,sha256=fZZb0I229_RXcxunCTP3flULzE0p48prsOWsvTqLkyM,2061
2
+ fotolab/__main__.py,sha256=aboOURPs_snOXTEWYR0q8oq1UTY9e-NxCd1j33V0wHI,833
3
+ fotolab/animate.py,sha256=ejimhTozo9DN7BbqqcV4x8zLnanZRKq1pxBBFeOdr6Q,2967
4
+ fotolab/auto.py,sha256=l_-Kf5V5Anvwz1QV1ET-42YsDWEeHf_okHkXWOycWAI,2295
5
+ fotolab/border.py,sha256=5ch2d7LVPhB2OFuuXSW5ci6Cn967CPDQu0qSfaO7uMg,3591
6
+ fotolab/cli.py,sha256=FBFSeMNqcOiJ6MuAcy0qUvc9cscdFUG946HlWZXBPtY,4984
7
+ fotolab/contrast.py,sha256=l7Bs5p8W8ypN9Cg3fFHnU-A20UwMKtjTiPk6D0PRwpM,2095
8
+ fotolab/env.py,sha256=fzUoRWgYEiYJIWYEiiSLEb7dH_xVUOnhMpQgc1yjrTY,1457
9
+ fotolab/info.py,sha256=lY9n6HDnlDyRVDTRqYwzxm5xgPSyh0P8N3ybnnNtNtw,2892
10
+ fotolab/montage.py,sha256=lUVY-zDSH7mwH-s34_XefdNp7CoDJHkwpbTUGiyJGgs,2037
11
+ fotolab/resize.py,sha256=2bH1Kgoe_DqU8ozJ1E_oA6a9JPtuwIlo5a4sq_4Yles,5018
12
+ fotolab/rotate.py,sha256=l_vQgf0IcI8AR1TSVsk4PrMZtJ3j_wpU77rKiGJ-KTA,1715
13
+ fotolab/sharpen.py,sha256=wUPtJdtB6mCRmcHrA0CoEVO0O0ROBJWhejTvUeL67QU,2655
14
+ fotolab/watermark.py,sha256=-YzxABVT5KJM1GgYLP3Z8X9YPfQzncOA9YnRJgNN6nA,7457
15
+ fotolab-0.21.1.dist-info/entry_points.txt,sha256=mvw7AY_yZkIyjAxPtHNed9X99NZeLnMxEeAfEJUbrCM,44
16
+ fotolab-0.21.1.dist-info/LICENSE.md,sha256=tGtFDwxWTjuR9syrJoSv1Hiffd2u8Tu8cYClfrXS_YU,31956
17
+ fotolab-0.21.1.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
18
+ fotolab-0.21.1.dist-info/METADATA,sha256=hH4mutSmdcXzZmt204mH0EdmgErcY18WK8KR9wtjw5o,10600
19
+ fotolab-0.21.1.dist-info/RECORD,,
@@ -0,0 +1,4 @@
1
+ Wheel-Version: 1.0
2
+ Generator: flit 3.9.0
3
+ Root-Is-Purelib: true
4
+ Tag: py3-none-any
@@ -0,0 +1,3 @@
1
+ [console_scripts]
2
+ fotolab=fotolab.cli:main
3
+