1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- Created by GNU Texinfo 6.5, http://www.gnu.org/software/texinfo/ -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>A DVI-to-PNG translator</title>
<meta name="description" content="A DVI-to-PNG translator">
<meta name="keywords" content="A DVI-to-PNG translator">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<link href="#Top" rel="start" title="Top">
<link href="#Index" rel="index" title="Index">
<link href="#SEC_Contents" rel="contents" title="Table of Contents">
<link href="http://tug.org/texinfohtml" rel="up" title="(dir)">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smalllisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
</head>
<body lang="en">
<h1 class="settitle" align="center">A DVI-to-PNG translator</h1>
<a name="SEC_Contents"></a>
<h2 class="contents-heading">Table of Contents</h2>
<div class="contents">
<ul class="no-bullet">
<li><a name="toc-Introduction-1" href="#Introduction">1 Introduction</a></li>
<li><a name="toc-Installation-1" href="#Installation">2 Installation</a>
<ul class="no-bullet">
<li><a name="toc-Prerequisites-1" href="#Prerequisites">2.1 Prerequisites</a></li>
<li><a name="toc-Configure-1" href="#Configure">2.2 Configure</a></li>
<li><a name="toc-Build_002finstall-1" href="#Build_002finstall">2.3 Build/install</a></li>
<li><a name="toc-Installation-outside-the-texmf-tree-1" href="#Installation-outside-the-texmf-tree">2.4 Installation outside the texmf tree</a></li>
<li><a name="toc-Installation-for-non_002dprivileged-users" href="#Advice-for-non_002dprivileged-users">2.5 Installation for non-privileged users</a></li>
</ul></li>
<li><a name="toc-Basic-usage-of-dvipng" href="#Basic-usage">3 Basic usage of dvipng</a></li>
<li><a name="toc-Command_002dline-options-1" href="#Command_002dline-options">4 Command-line options</a>
<ul class="no-bullet">
<li><a name="toc-Option-summary-1" href="#Option-summary">4.1 Option summary</a></li>
<li><a name="toc-Option-details-1" href="#Option-details">4.2 Option details</a></li>
</ul></li>
<li><a name="toc-Graphics-1" href="#Graphics">5 Graphics</a>
<ul class="no-bullet">
<li><a name="toc-Encapsulated-PostScript-1" href="#Encapsulated-PostScript">5.1 Encapsulated PostScript</a></li>
<li><a name="toc-Bitmapped-graphics-1" href="#Bitmapped-graphics">5.2 Bitmapped graphics</a></li>
<li><a name="toc-Raw-PostScript-1" href="#Raw-PostScript">5.3 Raw PostScript</a></li>
</ul></li>
<li><a name="toc-Color-1" href="#Color">6 Color</a>
<ul class="no-bullet">
<li><a name="toc-Color-specifications-1" href="#Color-specifications">6.1 Color specifications</a></li>
<li><a name="toc-Color-specials-1" href="#Color-specials">6.2 Color specials</a></li>
</ul></li>
<li><a name="toc-Diagnosing-problems-1" href="#Diagnosing-problems">7 Diagnosing problems</a>
<ul class="no-bullet">
<li><a name="toc-Contact-information-1" href="#Contact-information">7.1 Contact information</a></li>
<li><a name="toc-Debug-options-1" href="#Debug-options">7.2 Debug options</a></li>
</ul></li>
<li><a name="toc-Credits-1" href="#Credits">8 Credits</a></li>
<li><a name="toc-Copying-1" href="#Copying">9 Copying</a></li>
<li><a name="toc-Index-1" href="#Index">Index</a></li>
</ul>
</div>
<a name="Top"></a>
<div class="header">
<p>
Next: <a href="#Introduction" accesskey="n" rel="next">Introduction</a>, Up: <a href="http://tug.org/texinfohtml" accesskey="u" rel="up">(dir)</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="dvipng"></a>
<h1 class="top">dvipng</h1>
<p>This manual documents dvipng, a program to translate a DVI (DeVice
Independent) file into PNG (Portable Network Graphics).
</p>
<p>This file documents dvipng version 1.15
</p>
<p>Corrections or perhaps rewrites of sections are <em>very welcome</em>.
</p>
<p>Jan-Åke Larsson
</p>
<table class="menu" border="0" cellspacing="0">
<tr><td align="left" valign="top">• <a href="#Introduction" accesskey="1">Introduction</a>:</td><td> </td><td align="left" valign="top">Introduction
</td></tr>
<tr><td align="left" valign="top">• <a href="#Installation" accesskey="2">Installation</a>:</td><td> </td><td align="left" valign="top">How to compile and install dvipng
</td></tr>
<tr><td align="left" valign="top">• <a href="#Basic-usage" accesskey="3">Basic usage</a>:</td><td> </td><td align="left" valign="top">First things first
</td></tr>
<tr><td align="left" valign="top">• <a href="#Command_002dline-options" accesskey="4">Command-line options</a>:</td><td> </td><td align="left" valign="top">Advanced usage
</td></tr>
<tr><td align="left" valign="top">• <a href="#Graphics" accesskey="5">Graphics</a>:</td><td> </td><td align="left" valign="top">Including PostScript and/or bitmaps
</td></tr>
<tr><td align="left" valign="top">• <a href="#Color" accesskey="6">Color</a>:</td><td> </td><td align="left" valign="top">Using color with dvipng
</td></tr>
<tr><td align="left" valign="top">• <a href="#Diagnosing-problems" accesskey="7">Diagnosing problems</a>:</td><td> </td><td align="left" valign="top">Problems?
</td></tr>
<tr><td align="left" valign="top">• <a href="#Credits" accesskey="8">Credits</a>:</td><td> </td><td align="left" valign="top">People who have contributed
</td></tr>
<tr><td align="left" valign="top">• <a href="#Copying" accesskey="9">Copying</a>:</td><td> </td><td align="left" valign="top">GNU Lesser General Public License
</td></tr>
<tr><td align="left" valign="top">• <a href="#Index">Index</a>:</td><td> </td><td align="left" valign="top">General index
</td></tr>
</table>
<hr>
<a name="Introduction"></a>
<div class="header">
<p>
Next: <a href="#Installation" accesskey="n" rel="next">Installation</a>, Previous: <a href="#Top" accesskey="p" rel="prev">Top</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Introduction-1"></a>
<h2 class="chapter">1 Introduction</h2>
<p>This program makes PNG and/or GIF graphics from DVI files as obtained
from TeX and its relatives.
</p>
<p>If GIF support is enabled, GIF output is chosen by using the
‘<samp>dvigif</samp>’ binary or with the ‘<samp>--gif</samp>’ option.
</p>
<p>It is intended to produce anti-aliased screen-resolution images as fast
as is possible. The target audience is people who need to generate and
regenerate many images again and again. The primary target is the
preview-latex (X)Emacs package, a package to preview formulas from
within (X)Emacs. Yes, you get to see your formulas in the (X)Emacs
buffer, see <a href="http://www.gnu.org/software/auctex/preview-latex.html">http://www.gnu.org/software/auctex/preview-latex.html</a>.
</p>
<p>Another example is WeBWorK, an internet-based method for delivering
homework problems to students over the internet, giving students
instant feedback as to whether or not their answers are correct, see
<a href="http://webwork.math.rochester.edu">http://webwork.math.rochester.edu</a>.
</p>
<p>A more recent addition to the dvipng-using applications out there is
MediaWiki, the software behind Wikipedia and many other wikis out
there. Dvipng is used to render mathematical formulae from version
1.8.0 of MediaWiki, see <a href="http://www.mediawiki.org">http://www.mediawiki.org</a>.
</p>
<p>Other applications may also benefit, like web applications as latex2html
and WYSIWYG editors like LyX.
</p>
<p>The benefits of ‘<samp>dvipng</samp>’/‘<samp>dvigif</samp>’ include
</p>
<ul>
<li> Speed. It is a very fast bitmap-rendering code for DVI files, which
makes it suitable for generating large amounts of images on-the-fly,
as needed in preview-latex, WeBWorK and others.
</li><li> It does not read the postamble, so it can be started before TeX
finishes. There is a ‘<samp>--follow</samp>’ switch that makes dvipng wait at
end-of-file for further output, unless it finds the POST marker that
indicates the end of the DVI.
</li><li> Interactive query of options. dvipng can read options interactively
through stdin, and all options are usable. It is even possible to change
the input file through this interface.
</li><li> Supports PK, VF, PostScript Type1, and TrueType fonts, subfonts (i.e.,
as used in CJK-LaTeX), color specials, and inclusion of PostScript,
PNG, JPEG or GIF images.
</li><li> and more...
</li></ul>
<hr>
<a name="Installation"></a>
<div class="header">
<p>
Next: <a href="#Basic-usage" accesskey="n" rel="next">Basic usage</a>, Previous: <a href="#Introduction" accesskey="p" rel="prev">Introduction</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Installation-1"></a>
<h2 class="chapter">2 Installation</h2>
<a name="index-configuration_002c-of-dvipng"></a>
<a name="index-compilation"></a>
<a name="index-installation_002c-of-dvipng"></a>
<p>Installing dvipng should be simple: merely <code>./configure</code>,
<code>make</code>, and <code>make install</code>.
</p>
<table class="menu" border="0" cellspacing="0">
<tr><td align="left" valign="top">• <a href="#Prerequisites" accesskey="1">Prerequisites</a>:</td><td> </td><td align="left" valign="top">
</td></tr>
<tr><td align="left" valign="top">• <a href="#Configure" accesskey="2">Configure</a>:</td><td> </td><td align="left" valign="top">
</td></tr>
<tr><td align="left" valign="top">• <a href="#Build_002finstall" accesskey="3">Build/install</a>:</td><td> </td><td align="left" valign="top">
</td></tr>
<tr><td align="left" valign="top">• <a href="#Installation-outside-the-texmf-tree" accesskey="4">Installation outside the texmf tree</a>:</td><td> </td><td align="left" valign="top">
</td></tr>
<tr><td align="left" valign="top">• <a href="#Advice-for-non_002dprivileged-users" accesskey="5">Advice for non-privileged users</a>:</td><td> </td><td align="left" valign="top">
</td></tr>
</table>
<hr>
<a name="Prerequisites"></a>
<div class="header">
<p>
Next: <a href="#Configure" accesskey="n" rel="next">Configure</a>, Up: <a href="#Installation" accesskey="u" rel="up">Installation</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Prerequisites-1"></a>
<h3 class="section">2.1 Prerequisites</h3>
<ul>
<li> The GD Graphics Draw library, libgd
<p>The drawing library ‘<samp>libgd</samp>’ is necessary, and is downloadable at
<a href="http://www.boutell.com/gd">http://www.boutell.com/gd</a>, and there are binary packages for
most operating systems from their respective distributors. In any
case, the latest version of the library installs using ‘<samp>autoconf</samp>’
so it should not be difficult for you to install it from source, and
then proceed with installing dvipng.
</p>
</li><li> The path-searching library kpathsea
<p>Kpathsea is most likely included in your LaTeX installation, but it
may happen that ./configure does not find it; see below. If you do not
have it, download it from <a href="http://www.ctan.org">http://www.ctan.org</a> and compile it.
I have no experience with this, so I cannot help much here.
</p>
</li><li> The font-rendering library FreeType 2
<p>While not strictly necessary, a recent FreeType 2 is recommended since
dvipng currently will produce better-quality images when this library is
available. To take advantage of this, you should have at least FreeType
2.1.9.
</p>
<p>FreeType 2 will enable direct support for PostScript and TrueType fonts,
so that dvipng will not need to generate bitmapped variants on disk of
the TeX fonts since modern TeX distributions include PostScript
versions of them. Then, you can render images at different (and unusual)
resolutions without cluttering the disk with lots of bitmapped fonts.
</p>
<p>Finally, it will enable subfont support in dvipng. That is, if you want
to render CJK-LaTeX characters, you must have FreeType 2 installed.
</p>
</li><li> libpng and libz
<p>To be able to compress and write PNG files to disk, dvipng (or really
libgd) uses libpng which in turn uses libz. These should be available on
any modern system, if not, download them and install them.
</p>
</li><li> The <code>texinfo</code> package
<p>This is needed for building the documentation.
</p></li></ul>
<hr>
<a name="Configure"></a>
<div class="header">
<p>
Next: <a href="#Build_002finstall" accesskey="n" rel="next">Build/install</a>, Previous: <a href="#Prerequisites" accesskey="p" rel="prev">Prerequisites</a>, Up: <a href="#Installation" accesskey="u" rel="up">Installation</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Configure-1"></a>
<h3 class="section">2.2 Configure</h3>
<p>The first step is to configure the source code, telling it where
various files will be. To do so, run
</p>
<div class="example">
<pre class="example">./configure <var>options</var>
</pre></div>
<p>(Note: if you have fetched dvipng from CVS rather than a regular
release, you will have to first generate <samp>./configure</samp> by running
<code>autoconf</code> 2.53 or later.)
</p>
<p>On many machines, you will not need to specify any options, but if
<code>configure</code> cannot determine something on its own, you’ll need to
help it out. For a list of the options type
</p>
<div class="example">
<pre class="example">./configure --help
</pre></div>
<p>On some machines, the libraries will be installed in directories that
are not in the linker’s search path. This will generate an error when
running <samp>./configure</samp>, indicating that it cannot find libgd or
libkpathsea (most likely). You then need to specify the path to the
respective library’s object files. They are typically called e.g.,
<samp>libgd.a</samp> or <samp>libgd.so</samp>. If they are located in e.g.,
<samp>/sw/local/lib</samp>, do
</p>
<div class="example">
<pre class="example">./configure LDFLAGS=-L/sw/local/lib
</pre></div>
<p>If the library is available as a shared object file (<samp>.so</samp>), the
runtime linker may also need to be told where to find the library,
then use
</p>
<div class="example">
<pre class="example">./configure LDFLAGS='-L/sw/local/lib -R/sw/local/lib'
</pre></div>
<p>When either of these is necessary, it is likely that the C header
files are also installed in directories that are not in the C
preprocessor’s search path. This will also generate an error when
running <samp>./configure</samp>, indicating that it cannot find e.g.,
<samp>gd.h</samp> or <samp>kpathsea.h</samp> (most likely). You then need to
specify the path to the respective library’s C header files. If they
are located in e.g., <samp>/sw/local/include</samp>, do
</p>
<div class="example">
<pre class="example">./configure CPPFLAGS=-I/sw/local/include
</pre></div>
<p>On my SUN Solaris workstation, I had to combine this into
</p>
<div class="example">
<pre class="example">./configure CPPFLAGS='-I/sw/local/include -I/sw/tex/teTeX/1.0/include'\
LDFLAGS='-L/sw/local/lib -R/sw/local/lib -L/sw/tex/teTeX/1.0/lib/'
</pre></div>
<p>where the backslash denotes a continuation of the line.
</p>
<hr>
<a name="Build_002finstall"></a>
<div class="header">
<p>
Next: <a href="#Installation-outside-the-texmf-tree" accesskey="n" rel="next">Installation outside the texmf tree</a>, Previous: <a href="#Configure" accesskey="p" rel="prev">Configure</a>, Up: <a href="#Installation" accesskey="u" rel="up">Installation</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Build_002finstall-1"></a>
<h3 class="section">2.3 Build/install</h3>
<p>Once <samp>configure</samp> has been run, simply enter
</p>
<div class="example">
<pre class="example">make
</pre></div>
<p>at the prompt to compile the C code, and build the documentation files.
To install the files into the locations chosen earlier, type
</p>
<div class="example">
<pre class="example">make install
</pre></div>
<p>You may need special privileges to install, e.g., if you are installing
into system directories.
</p>
<hr>
<a name="Installation-outside-the-texmf-tree"></a>
<div class="header">
<p>
Next: <a href="#Advice-for-non_002dprivileged-users" accesskey="n" rel="next">Advice for non-privileged users</a>, Previous: <a href="#Build_002finstall" accesskey="p" rel="prev">Build/install</a>, Up: <a href="#Installation" accesskey="u" rel="up">Installation</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Installation-outside-the-texmf-tree-1"></a>
<h3 class="section">2.4 Installation outside the texmf tree</h3>
<p>In some cases, a dvipng binary installed outside the texmf tree will
not be able to find virtual fonts, or the PostScript font maps
(normally used by dvips). This may be because <em>only</em>
$SELFAUTOLOC, $SELFAUTODIR, and $SELFAUTOPARENT are used in the texmf
tree configuration file ‘<samp>texmf.cnf</samp>’. If so, give the switch
‘<samp>--enable-selfauto-set</samp>’ to ‘<samp>./configure</samp>’. This will make
dvipng adjust these three internally so that kpathsea thinks that
dvipng <em>is</em> installed in the texmf tree.
</p>
<hr>
<a name="Advice-for-non_002dprivileged-users"></a>
<div class="header">
<p>
Previous: <a href="#Installation-outside-the-texmf-tree" accesskey="p" rel="prev">Installation outside the texmf tree</a>, Up: <a href="#Installation" accesskey="u" rel="up">Installation</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Installation-for-non_002dprivileged-users"></a>
<h3 class="section">2.5 Installation for non-privileged users</h3>
<p>Often people without system administration privileges want to install
software for their private use. In that case you need to specify more
options to the <samp>configure</samp> script, usually this is done by using
the ‘<samp>--prefix</samp>’ option to the <samp>configure</samp> script, and let it
point to the personal home directory. In that way, resulting binaries
will be installed under the <samp>bin</samp> subdirectory of your home
directory, manual pages under <samp>man</samp> and so on. That way, it is
reasonably easy to maintain a bunch of additional packages, since the
prefix argument is supported by most <samp>configure</samp> scripts.
</p>
<p>You’ll have to add something like <samp>/home/myself/bin</samp> to your
<code>PATH</code> shell variable, if it isn’t there already, and similarly
set the <code>INFOPATH</code> and <code>MANPATH</code> variables to be able to
access the documentation.
</p>
<hr>
<a name="Basic-usage"></a>
<div class="header">
<p>
Next: <a href="#Command_002dline-options" accesskey="n" rel="next">Command-line options</a>, Previous: <a href="#Installation" accesskey="p" rel="prev">Installation</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Basic-usage-of-dvipng"></a>
<h2 class="chapter">3 Basic usage of dvipng</h2>
<a name="index-invoking-dvipng"></a>
<p>To use dvipng at its simplest, simply type
</p>
<div class="example">
<pre class="example">dvipng foo
</pre></div>
<p>where <samp>foo.dvi</samp> is the output of TeX that you want to convert to
PNG format. If there are four pages in <samp>foo.dvi</samp>, those pages will
be output as <samp>foo1.png</samp>, <samp>foo2.png</samp>, <samp>foo3.png</samp>, and
<samp>foo4.png</samp>, respectively.
</p>
<p>If you have enabled the PostScript font support (via FreeType),
fonts will be rendered as they are needed. Otherwise, dvipng will use
bitmapped (PK) fonts, and if you use PK fonts that have not been used on
your system before, they may be automatically generated; this process
can take a few minutes, so progress reports appear by default. The next
time the same font is used, it will have been saved on disk, so
rendering will go much faster. (If dvipng tries to endlessly generate
the same fonts over and over again, something is wrong. See <a href="http://tug.org/texinfohtml/kpathsea.html#Unable-to-generate-fonts">Unable to
generate fonts</a> in <cite>Kpathsea</cite>.)
</p>
<p>Many options are available (see the next section). For a brief summary
of available options, just type
</p>
<div class="example">
<pre class="example">dvipng --help
</pre></div>
<hr>
<a name="Command_002dline-options"></a>
<div class="header">
<p>
Next: <a href="#Graphics" accesskey="n" rel="next">Graphics</a>, Previous: <a href="#Basic-usage" accesskey="p" rel="prev">Basic usage</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Command_002dline-options-1"></a>
<h2 class="chapter">4 Command-line options</h2>
<a name="index-command_002dline-options"></a>
<a name="index-options_002c-dvipng"></a>
<p>dvipng has a plethora of command line options. Reading through this
section will give a good idea of the capabilities of the driver.
</p>
<table class="menu" border="0" cellspacing="0">
<tr><td align="left" valign="top">• <a href="#Option-summary" accesskey="1">Option summary</a>:</td><td> </td><td align="left" valign="top">Quick listing, from dvipng –help.
</td></tr>
<tr><td align="left" valign="top">• <a href="#Option-details" accesskey="2">Option details</a>:</td><td> </td><td align="left" valign="top">More information about each option.
</td></tr>
</table>
<hr>
<a name="Option-summary"></a>
<div class="header">
<p>
Next: <a href="#Option-details" accesskey="n" rel="next">Option details</a>, Up: <a href="#Command_002dline-options" accesskey="u" rel="up">Command-line options</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Option-summary-1"></a>
<h3 class="section">4.1 Option summary</h3>
<a name="index-options_002c-summary"></a>
<p>Here is a handy summary of the options; it is printed out when you run
dvipng with no arguments or with the standard ‘<samp>--help</samp>’ option.
</p>
<div class="example">
<pre class="example">This is ./dvipng (TeX Live) 1.15 Copyright 2002-2015 Jan-Ake Larsson
Usage: ./dvipng [OPTION]... FILENAME[.dvi]
Options are chosen to be similar to dvips' options where possible:
-d # Debug (# is the debug bitmap, 1 if not given)
-D # Output resolution
-l # Last page to be output
-o f Output file, '%d' is pagenumber
-O c Image offset
-p # First page to be output
-pp #,#.. Page list to be output
-q* Quiet operation
-T c Image size (also accepts '-T bbox' and '-T tight')
-v* Verbose operation
- Interactive query of options
These do not correspond to dvips options:
-bd # Transparent border width in dots
-bd s Transparent border fallback color (TeX-style color)
-bg s Background color (TeX-style color or 'Transparent')
--depth* Output the image depth on stdout
--dvinum* Use TeX page numbers in output filenames
-fg s Foreground color (TeX-style color)
--follow* Wait for data at end-of-file
--freetype* FreeType font rendering (preferred, default on)
--gamma # Control color interpolation
--gif Output GIF images (dvigif default)
--height* Output the image height on stdout
--nogs* Don't use ghostscript for PostScript specials
--nogssafer* Don't use -dSAFER in ghostscript calls
--norawps* Don't convert raw PostScript specials
--palette* Force palette output
--picky When a warning occurs, don't output image
--png Output PNG images (dvipng default)
--strict When a warning occurs, exit
--truecolor* Truecolor output
-Q # Quality (PK subsampling)
--width* Output the image width on stdout
-z # PNG compression level
# = number f = file s = string * = suffix, '0' to turn off
c = comma-separated dimension pair (e.g., 3.2in,-32.1cm)
</pre></div>
<hr>
<a name="Option-details"></a>
<div class="header">
<p>
Previous: <a href="#Option-summary" accesskey="p" rel="prev">Option summary</a>, Up: <a href="#Command_002dline-options" accesskey="u" rel="up">Command-line options</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Option-details-1"></a>
<h3 class="section">4.2 Option details</h3>
<a name="index-option_002c-details-of"></a>
<p>Many of the parameterless options listed here can be turned off by
suffixing the option with a zero (‘<samp>0</samp>’); for instance, to turn off
page reversal, use ‘<samp>-r0</samp>’. Such options are marked with a trailing
‘<samp>*</samp>’.
</p>
<dl compact="compact">
<dt>‘<samp>-</samp>’</dt>
<dd><a name="index-options_002c-reading-from-standard-input"></a>
<a name="index-standard-input_002c-reading-options-from"></a>
<p>Read additional options from standard input after processing the command
line.
</p>
</dd>
<dt>‘<samp>--help</samp>’</dt>
<dd><p>Print a usage message and exit.
</p>
</dd>
<dt>‘<samp>--version</samp>’</dt>
<dd><p>Print the version number and exit.
</p>
</dd>
<dt>‘<samp>-bd <var>num</var></samp>’</dt>
<dt>‘<samp>-bd <var>color_spec</var></samp>’</dt>
<dt>‘<samp>-bd '<var>num</var> <var>color_spec</var>'</samp>’</dt>
<dd><a name="index-transparent-border-width"></a>
<a name="index-transparent-border-fallback-color"></a>
<p>Set the pixel width of the transparent border (default 0). Using this
option will make the image edges transparent, but it only affects pixels
with the background color. Giving a <var>color_spec</var> will set the
fallback color, to be used in viewers that cannot handle transparency
(the default is the background color). The color spec should be in
TeX color \special syntax, e.g., ’rgb 1.0 0.0 0.0’. Setting the
fallback color makes the default border width 1 px. See <a href="#Color">Color</a>.
</p>
</dd>
<dt>‘<samp>--bdpi <var>num</var></samp>’</dt>
<dd><a name="index-base-resolution_002c-setting"></a>
<p>This option only has an effect when using bitmapped (PK) fonts. The
option sets the base (Metafont) resolution, both horizontal and
vertical, to <var>num</var> dpi (dots per inch). This option is necessary
when manually selecting Metafont mode with the –mode option (see
below).
</p>
</dd>
<dt>‘<samp>-bg <var>color_spec</var></samp>’</dt>
<dd><a name="index-background-color-_0028option_0029"></a>
<p>Choose background color for the images. This option will be ignored if
there is a background color \special in the DVI. The color spec should
be in TeX color \special syntax, e.g., ’rgb 1.0 0.0 0.0’. You can
also specify ’Transparent’ or ’transparent’ which will give you a
transparent background with the normal background as a fallback color. A
capitalized ’Transparent’ will give a full-alpha transparency, while an
all-lowercase ’transparent’ will give a simple fully transparent
background with non-transparent antialiased pixels. The latter would be
suitable for viewers who cannot cope with a true alpha channel. GIF
images do not support full alpha transparency, so in case of GIF output,
both variants will use the latter behaviour. See <a href="#Color">Color</a>.
</p>
</dd>
<dt>‘<samp>-d <var>num</var></samp>’</dt>
<dd><a name="index-debugging"></a>
<p>Set the debug flags, showing what dvipng (thinks it) is doing. This will
work unless dvipng has been compiled without the <code>DEBUG</code> option
(not recommended). Set the flags as you need them, use ‘<samp>-d -1</samp>’ as
the first option for maximum output. See <a href="#Debug-options">Debug options</a>.
</p>
</dd>
<dt>‘<samp>-D <var>num</var></samp>’</dt>
<dd><a name="index-output-resolution_002c-setting"></a>
<p>Set the output resolution, both horizontal and vertical, to <var>num</var>
dpi (dots per inch).
</p>
<p>One may want to adjust this to fit a certain text font size (e.g., on
a web page), and for a text font height of <var>font_px</var> pixels (in
Mozilla) the correct formula is
</p><div class="example">
<pre class="example"><var>dpi</var> = <var>font_px</var> * 72.27 / 10 [px * TeXpt/in / TeXpt]
</pre></div>
<p>The last division by ten is due to the standard font height 10pt in
your document, if you use 12pt, divide by 12. Unfortunately, some
proprietary browsers have font height in pt (points), not pixels. You
have to rescale that to pixels, using the screen resolution (default
is usually 96 dpi) which means the formula is
</p><div class="example">
<pre class="example"><var>font_px</var> = <var>font_pt</var> * 96 / 72 [pt * px/in / (pt/in)]
</pre></div>
<p>On some high-res screens, the value is instead 120 dpi. Good luck!
</p>
</dd>
<dt>‘<samp>--depth*</samp>’</dt>
<dd><a name="index-baseline-reporting"></a>
<a name="index-depth-reporting"></a>
<p>Report the depth of the image. This only works reliably when the
LaTeX style <samp>preview.sty</samp> from preview-latex is used with
the ‘<samp>active</samp>’ option. It reports the number of pixels from the
bottom of the image to the baseline of the image. This can be used for
vertical positioning of the image in, e.g., web documents, where one
would use (Cascading StyleSheets 1)
</p><div class="example">
<pre class="example"><IMG SRC="<var>filename.png</var>" STYLE="vertical-align: -<var>depth</var>px">
</pre></div>
<p>The depth is a negative offset in this case, so the minus sign is
necessary, and the unit is pixels (px).
</p>
</dd>
<dt>‘<samp>--dvinum*</samp>’</dt>
<dd><p>Set this option to make the output page number be the TeX page
numbers rather than the physical page number. See the ‘<samp>-o</samp>’ switch.
</p>
</dd>
<dt>‘<samp>-fg <var>color_spec</var></samp>’</dt>
<dd><a name="index-foreground-color-_0028option_0029"></a>
<p>Choose foreground color for the images. This option will be ignored if
there is a foreground color \special in the DVI. The color spec should
be in TeX color \special syntax, e.g., ’rgb 1.0 0.0 0.0’.
See <a href="#Color">Color</a>.
</p>
</dd>
<dt>‘<samp>--follow*</samp>’</dt>
<dd><a name="index-follow-mode"></a>
<p>Wait for data at end-of-file. One of the benefits of dvipng is that it
does not read the postamble, so it can be started before TeX
finishes. This switch makes dvipng wait at end-of-file for further
output, unless it finds the POST marker that indicates the end of the
DVI. This is similar to ‘<samp>tail -f</samp>’ but for DVI-to-PNG conversion.
</p>
</dd>
<dt>‘<samp>--freetype*</samp>’</dt>
<dd><a name="index-FreeType-font-rendering"></a>
<p>Enable/disable FreeType font rendering (default on). This option is
available if the FreeType2 font library was present at compilation time.
If this is the case, dvipng will have direct support for PostScript
Type1 and TrueType fonts internally, rather than using ‘<samp>gsftopk</samp>’
for rendering the fonts. If you have PostScript versions of Computer
Modern installed, there will be no need to generate bitmapped (PK)
variants on disk of these. Then, you can render images at different (and
unusual) resolutions without cluttering the disk with lots of bitmapped
fonts.
</p>
</dd>
<dt>‘<samp>--gamma <var>num</var></samp>’</dt>
<dd><a name="index-gamma"></a>
<a name="index-dark-fonts"></a>
<a name="index-light-fonts"></a>
<a name="index-fuzzy-images"></a>
<p>Control the interpolation of colors in the greyscale anti-aliasing
color palette. Default value is 1.0. For 0 < <var>num</var> < 1, the
fonts will be lighter (more like the background), and for <var>num</var> >
1, the fonts will be darker (more like the foreground).
</p>
</dd>
<dt>‘<samp>--gif*</samp>’</dt>
<dd><a name="index-GIF-image-format"></a>
<p>The images are output in the GIF format, if GIF support is enabled.
This is the default for the ‘<samp>dvigif</samp>’ binary, which only will be
available when GIF support is enabled. GIF images are palette images
(see the ‘<samp>--palette</samp>’ option) and does not support true alpha
channels (see the ‘<samp>--bg</samp>’ option). See also the ‘<samp>--png</samp>’
option.
</p>
</dd>
<dt>‘<samp>--height*</samp>’</dt>
<dd><a name="index-baseline-reporting-1"></a>
<a name="index-height-reporting"></a>
<p>Report the height of the image. This only works reliably when the
LaTeX style <samp>preview.sty</samp> from preview-latex is used with
the ‘<samp>active</samp>’ option. It reports the number of pixels from the top
of the image to the baseline of the image. The total height of the
image is obtained as the sum of the values reported from
‘<samp>--height</samp>’ and ‘<samp>--depth</samp>’.
</p>
</dd>
<dt>‘<samp>-l [=]<var>num</var></samp>’</dt>
<dd><a name="index-last-page-printed"></a>
<a name="index-page_002c-last-printed"></a>
<a name="index-physical-page-number_002c-and-_002dl"></a>
<a name="index-absolute-page-number_002c-and-_002dl"></a>
<p>The last page printed will be the first one numbered <var>num</var>. Default
is the last page in the document. If <var>num</var> is prefixed by an equals
sign, then it (and the argument to the ‘<samp>-p</samp>’ option, if specified)
is treated as a physical (absolute) page number, rather than a value to
compare with the TeX ‘<samp>\count0</samp>’ values stored in the DVI file.
Thus, using ‘<samp>-l =9</samp>’ will end with the ninth page of the document,
no matter what the pages are actually numbered.
</p>
</dd>
<dt>‘<samp>--mode <var>mode</var></samp>’</dt>
<dd><a name="index-mode-name_002c-specifying"></a>
<a name="index-Metafont-mode_002c-specifying"></a>
<p>This option only has an effect when using bitmapped (PK) fonts. Use
<var>mode</var> as the Metafont device name for the PK fonts (both for path
searching and font generation). This needs to be augmented with the base
device resolution, given with the ‘<samp>--bdpi</samp>’ option. See the file
<a href="ftp://ftp.tug.org/tex/modes.mf">ftp://ftp.tug.org/tex/modes.mf</a> for a list of resolutions and mode
names for most devices. See <a href="http://tug.org/texinfohtml/kpathsea.html#Unable-to-generate-fonts">Unable to generate fonts</a> in <cite>Kpathsea</cite>.
</p>
</dd>
<dt>‘<samp>-M*</samp>’</dt>
<dd><a name="index-font-generation_002c-avoiding"></a>
<a name="index-mktexpk_002c-avoiding"></a>
<p>This option only has an effect when using bitmapped (PK) fonts. It turns
off automatic PK font generation (<samp>mktexpk</samp>).
</p>
</dd>
<dt>‘<samp>--nogs*</samp>’</dt>
<dd><a name="index-GhostScript_002c-turning-off"></a>
<p>This switch prohibits the internal call to GhostScript for displaying
PostScript specials. ‘<samp>--nogs0</samp>’ turns the call back on.
</p>
</dd>
<dt>‘<samp>--nogssafer*</samp>’</dt>
<dd><a name="index-GhostScript-and-_002ddSAFER"></a>
<a name="index-_002ddSAFER"></a>
<p>Normally, if GhostScript is used to render PostScript specials, the
GhostScript interpreter is run with the option ‘<samp>-dSAFER</samp>’. The
‘<samp>--nogssafer</samp>’ option runs GhostScript without ‘<samp>-dSAFER</samp>’. The
‘<samp>-dSAFER</samp>’ option in Ghostscript disables PostScript operators such
as deletefile, to prevent possibly malicious PostScript programs from
having any effect.
</p>
</dd>
<dt>‘<samp>--norawps*</samp>’</dt>
<dd><a name="index-PostScript_002c-turning-off-raw-PostScript-specials"></a>
<p>Some packages generate raw PostScript specials, even non-rendering such
specials. This switch turns off the internal call to GhostScript
intended to display these raw PostScript specials. ‘<samp>--norawps0</samp>’
turns the call back on.
</p>
</dd>
<dt>‘<samp>-o <var>name</var></samp>’</dt>
<dd><a name="index-output_002c-redirecting"></a>
<a name="index-standard-output_002c-output-to"></a>
<p>Send output to the file <var>name</var>. A single occurrence of ‘<samp>%d</samp>’ or
‘<samp>%01d</samp>’, …, ‘<samp>%09d</samp>’ will be exchanged for the physical
page number (this can be changed, see the ‘<samp>--dvinum</samp>’ switch). The
default output filename is ‘<samp><var>file</var>%d.png</samp>’ where the input DVI
file was ‘<samp><var>file</var>.dvi</samp>’.
</p>
</dd>
<dt>‘<samp>-O <var>x-offset</var>,<var>y-offset</var></samp>’</dt>
<dd><a name="index-offset-pages"></a>
<p>Move the origin by <var>x-offset</var>,<var>y-offset</var>, a comma-separated
pair of dimensions such as ‘<samp>.1in,-.3cm</samp>’.
The origin of the page is shifted from the default position
(of one inch down, one inch to the right from the upper left corner of
the paper) by this amount.
</p>
</dd>
<dt>‘<samp>-p [=]<var>num</var></samp>’</dt>
<dd><a name="index-first-page-printed"></a>
<a name="index-page_002c-first-printed"></a>
<a name="index-physical-page-number_002c-and-_002dp"></a>
<a name="index-absolute-page-number_002c-and-_002dp"></a>
<p>The first page printed will be the first one numbered <var>num</var>. Default
is the first page in the document. If <var>num</var> is prefixed by an
equals sign, then it (and the argument to the ‘<samp>-l</samp>’ option, if
specified) is treated as a physical (absolute) page number, rather than
a value to compare with the TeX ‘<samp>\count0</samp>’ values stored in the
DVI file. Thus, using ‘<samp>-p =3</samp>’ will start with the third page of
the document, no matter what the pages are actually numbered.
</p>
</dd>
<dt>‘<samp>--palette*</samp>’</dt>
<dd><a name="index-forcing-palette-output"></a>
<p>When an external image is included, ‘<samp>dvipng</samp>’ will automatically
switch to truecolor mode, to avoid unnecessary delay and quality
reduction, and enable the EPS translator to draw on a transparent
background and outside of the boundingbox. This switch will force
palette (256-color) output and make ‘<samp>dvipng</samp>’ revert to opaque
clipped image inclusion. This will also override the ‘<samp>--truecolor</samp>’
switch if present.
</p>
</dd>
<dt>‘<samp>--picky*</samp>’</dt>
<dd><a name="index-no-erroneous-images"></a>
<p>No images are output when a warning occurs. Normally, dvipng will
output an image in spite of a warning, but there may be something
missing in this image. One reason to use this option would be if you
have a more complete but slower fallback converter. Mainly, this is
useful for failed figure inclusion and unknown \special occurrences,
but warnings will also occur for missing or unknown color specs and
missing PK fonts.
</p>
</dd>
<dt>‘<samp>--png*</samp>’</dt>
<dd><a name="index-PNG-image-format"></a>
<p>The images are output in the PNG format. This is the default for the
‘<samp>dvipng</samp>’ binary. See also the ‘<samp>--gif</samp>’ option.
</p>
</dd>
<dt>‘<samp>-pp <var>firstpage</var>-<var>lastpage</var></samp>’</dt>
<dd><a name="index-page-range"></a>
<p>Print pages <var>firstpage</var> through <var>lastpage</var>; but not quite
equivalent to ‘<samp>-p <var>firstpage</var> -l <var>lastpage</var></samp>’. For example,
when rendering a book, there may be several instances of a page in the
DVI file (one in <code>\frontmatter</code>, one in <code>\mainmatter</code>, and one
in <code>\backmatter</code>). In case of several pages matching, ‘<samp>-pp
<var>firstpage</var>-<var>lastpage</var></samp>’ will render <em>all</em> pages that
matches the specified range, while ‘<samp>-p <var>firstpage</var> -l
<var>lastpage</var></samp>’ will render the pages from the <em>first</em> occurrence
of <var>firstpage</var> to the <em>first</em> occurrence of <var>lastpage</var>.
This is the (undocumented) behaviour of dvips. In dvipng you can give
both kinds of options, in which case you get all pages that matches the
range in ‘<samp>-pp</samp>’ between the pages from ‘<samp>-p</samp>’ to ‘<samp>-l</samp>’. Also
multiple ‘<samp>-pp</samp>’ options accumulate, unlike ‘<samp>-p</samp>’ and ‘<samp>-l</samp>’.
The ‘<samp>-</samp>’ separator can also be ‘<samp>:</samp>’. Note that ‘<samp>-pp -1</samp>’
will be interpreted as "all pages up to and including 1", if you want a
page numbered -1 (only the table of contents, say) put ‘<samp>-pp -1--1</samp>’,
or more readable, ‘<samp>-pp -1:-1</samp>’.
</p>
</dd>
<dt>‘<samp>-q*</samp>’</dt>
<dd><a name="index-quiet-operation"></a>
<a name="index-silent-operation"></a>
<a name="index-warnings_002c-suppressing"></a>
<p>Run quietly. Don’t chatter about pages converted, etc. to standard
output; report no warnings (only errors) to standard error.
</p>
</dd>
<dt>‘<samp>-Q <var>num</var></samp>’</dt>
<dd><a name="index-antialiasing-levels_002c-number-of"></a>
<a name="index-quality"></a>
<p>Set the quality to <var>num</var>. That is, choose the number of antialiasing
levels for bitmapped fonts (PK), to be
<var>num</var>*<var>num</var>+1. The default value is 4 which gives 17 levels of
antialiasing for antialiased fonts from these two. If FreeType is
available, its rendering is unaffected by this option.
</p>
</dd>
<dt>‘<samp>-r*</samp>’</dt>
<dd><a name="index-reverse-pagination"></a>
<p>Toggle output of pages in reverse/forward order. By default, the first
page in the DVI is output first.
</p>
</dd>
<dt>‘<samp>--strict*</samp>’</dt>
<dd><a name="index-exit-on-erroneous-images"></a>
<p>The program exits when a warning occurs. Normally, dvipng will output
an image in spite of a warning, but there may be something missing in
this image. One reason to use this option would be if you have a more
complete but slower fallback converter. See the ‘<samp>--picky</samp>’ option
above for a list of when warnings occur.
</p>
</dd>
<dt>‘<samp>-T <var>image_size</var></samp>’</dt>
<dd><p>Set the image size to <var>image_size</var> which can be either of
‘<samp>bbox</samp>’, ‘<samp>tight</samp>’, or a comma-separated pair of dimensions
<var>hsize</var>,<var>vsize</var> such as ‘<samp>.1in,.3cm</samp>’. The default is
‘<samp>bbox</samp>’ which produces a PNG that includes all ink put on the page
and in addition the DVI origin, located 1in from the top and 1in from
the left edge of the paper. This usually gives whitespace above and to
the left in the produced image. The value ‘<samp>tight</samp>’ will make dvipng
only include all ink put on the page, producing neat images.
</p>
</dd>
<dt>‘<samp>--truecolor*</samp>’</dt>
<dd><a name="index-truecolor-output"></a>
<p>This will make ‘<samp>dvipng</samp>’ generate truecolor output. Note that
truecolor output is automatic if you include an external image in your
DVI, e.g., via a PostScript special (i.e., the ‘<samp>graphics</samp>’ or
‘<samp>graphicx</samp>’ package). This switch is overridden by the
‘<samp>--palette</samp>’ switch.
</p>
</dd>
<dt>‘<samp>-v*</samp>’</dt>
<dd><p>Enable verbose operation. This will currently indicate what fonts is
used, in addition to the usual output.
</p>
</dd>
<dt>‘<samp>--width*</samp>’</dt>
<dd><a name="index-width-reporting"></a>
<p>Report the width of the image. See also ‘<samp>--height</samp>’ and
‘<samp>--depth</samp>’.
</p>
</dd>
<dt>‘<samp>-x <var>num</var></samp>’</dt>
<dd><a name="index-magnification_002c-overriding-DVI"></a>
<p>This option is deprecated; it should not be used. It is much better to
select the output resolution directly with the ‘<samp>-D</samp>’ option. This
option sets the magnification ratio to <em><var>num</var>/1000</em> and
overrides the magnification specified in the DVI file. Must be between
10 and 100000. It is recommended that you use standard magstep values
(1095, 1200, 1440, 1728, 2074, 2488, 2986, and so on) to help reduce the
total number of PK files generated. <var>num</var> may be a real number, not
an integer, for increased precision.
</p>
</dd>
<dt>‘<samp>-z <var>num</var></samp>’</dt>
<dd><a name="index-compression"></a>
<p>Set the PNG compression level to <var>num</var>. This option is enabled if
your ‘<samp>libgd</samp>’ is new enough. The default compression level is 1,
which selects maximum speed at the price of slightly larger PNGs. For an
older ‘<samp>libgd</samp>’, the hard-soldered value 5 is used. The include file
‘<samp>png.h</samp>’ says
</p><blockquote>
<p>Currently, valid values range from 0 - 9, corresponding directly to the
zlib compression levels 0 - 9 (0 - no compression, 9 - "maximal"
compression). Note that tests have shown that zlib compression levels
3-6 usually perform as well as level 9 for PNG images, and do
considerably fewer calculations. In the future, these values may not
correspond directly to the zlib compression levels.
</p></blockquote>
</dd>
</dl>
<hr>
<a name="Graphics"></a>
<div class="header">
<p>
Next: <a href="#Color" accesskey="n" rel="next">Color</a>, Previous: <a href="#Command_002dline-options" accesskey="p" rel="prev">Command-line options</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Graphics-1"></a>
<h2 class="chapter">5 Graphics</h2>
<p>‘<samp>dvipng</samp>’ attempts to handle graphics as included by the
‘<samp>graphicx</samp>’ and ‘<samp>graphics</samp>’ packages, without the need of
specifying a driver to these packages. This means that it recognizes
the encapsulated postscript inclusion meant for ‘<samp>dvips</samp>’, but is
also able (from version 1.8) to include bitmapped graphics. It also
tries to handle some of the raw PostScript that is output from various
packages. Some of the possibilities and problems are mentioned below.
</p>
<table class="menu" border="0" cellspacing="0">
<tr><td align="left" valign="top">• <a href="#Encapsulated-PostScript" accesskey="1">Encapsulated PostScript</a>:</td><td> </td><td align="left" valign="top">An internal call to GhostScript
</td></tr>
<tr><td align="left" valign="top">• <a href="#Bitmapped-graphics" accesskey="2">Bitmapped graphics</a>:</td><td> </td><td align="left" valign="top">PNG, JPEG and GIF
</td></tr>
<tr><td align="left" valign="top">• <a href="#Raw-PostScript" accesskey="3">Raw PostScript</a>:</td><td> </td><td align="left" valign="top">Ignore or give to GhostScript
</td></tr>
</table>
<hr>
<a name="Encapsulated-PostScript"></a>
<div class="header">
<p>
Next: <a href="#Bitmapped-graphics" accesskey="n" rel="next">Bitmapped graphics</a>, Up: <a href="#Graphics" accesskey="u" rel="up">Graphics</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Encapsulated-PostScript-1"></a>
<h3 class="section">5.1 Encapsulated PostScript</h3>
<p>When an EPS file is included, a call to GhostScript is performed to
produce a bitmapped image that can be included. The default is to
produce an image with transparent background, at the same size as the
DVI page currently being converted to PNG, and include that as
foreground on the PNG. Of course, if the image is to be cropped, that
is done. The included image will be a truecolor image, so for maximum
performance the output PNG will be in truecolor mode as well.
</p>
<p>This conversion needs the ‘<samp>pngalpha</samp>’ output device to be present
in your copy of GhostScript. If that device is not present, or you use
the ‘<samp>--palette</samp>’ switch or request GIF output, the fallback is to
use the ‘<samp>png16m</samp>’ device to produce a cropped opaque image for
inclusion. Other relevant switches are ‘<samp>--noghostscript</samp>’ and
‘<samp>--nogssafer</samp>’. See <a href="#Option-details">Option details</a>.
</p>
<a name="index-PostScript-inclusion-problems"></a>
<p>The most common problem with including graphics is an incorrect
bounding box. Complain to whoever wrote the software that generated
the file if the bounding box is indeed incorrect. An adjusted
boundingbox can be specified in the ‘<samp>\includegraphics</samp>’ call, as
in this example (using ‘<samp>graphicx</samp>’):
</p>
<div class="example">
<pre class="example">\includegraphics[bb=10 20 100 200]{imagename.eps}
</pre></div>
<hr>
<a name="Bitmapped-graphics"></a>
<div class="header">
<p>
Next: <a href="#Raw-PostScript" accesskey="n" rel="next">Raw PostScript</a>, Previous: <a href="#Encapsulated-PostScript" accesskey="p" rel="prev">Encapsulated PostScript</a>, Up: <a href="#Graphics" accesskey="u" rel="up">Graphics</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Bitmapped-graphics-1"></a>
<h3 class="section">5.2 Bitmapped graphics</h3>
<p>dvipng can include PNG, JPEG and GIF graphics. When including such
images via ‘<samp>\includegraphics</samp>’ you need to specify the bounding
box since TeX itself cannot read them from the files in question.
The bounding box size should be given as ‘<samp>0 0 w h</samp>’ in pixels,
e.g., if the file ‘<samp>imagename.png</samp>’ is 300x400 pixels, the
inclusion would read
</p>
<div class="example">
<pre class="example">\includegraphics[bb=0 0 300 400]{imagename.png}
</pre></div>
<p>The default size is the image size in bp (“big points” in TeX
nomenclature or PostScript points as other people have it, 72 per inch).
That is, default resolution will be 72 dpi for included bitmaps, which
is the default size in the few other bitmap-capable drivers that are
known to me (dvipdfm and PDFLaTeX).
</p>
<p>If you want 100 dpi you need to specify the width accordingly. You
just divide your image width by 100: a 135 pixel wide image at 100 dpi
will take up 1.35 inches. If you want 200 dpi you divide by 200, and
so on. Simple, eh? The example above at 200 dpi would be 1.5 inches
wide:
</p>
<div class="example">
<pre class="example">\includegraphics[bb=0 0 300 400,witdh=1.5in]{imagename.png}
</pre></div>
<hr>
<a name="Raw-PostScript"></a>
<div class="header">
<p>
Previous: <a href="#Bitmapped-graphics" accesskey="p" rel="prev">Bitmapped graphics</a>, Up: <a href="#Graphics" accesskey="u" rel="up">Graphics</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Raw-PostScript-1"></a>
<h3 class="section">5.3 Raw PostScript</h3>
<p>dvipng attempts to handle raw PostScript. Rendering raw PostScript
specials is done on top of the page by including a transparent image
generated by the ‘<samp>pngalpha</samp>’ device in GhostScript (automatically
selecting ‘<samp>truecolor</samp>’ mode in dvipng).
</p>
<p>Included PostScript headers are respected, and if the header
‘<samp>tex.pro</samp>’ is included, dvipng also throws in ‘<samp>color.pro</samp>’ and
‘<samp>special.pro</samp>’. The package ‘<samp>xcolor</samp>’ includes its own headers
with color names, and this is not only kept as a PostScript header, but
is also read and interpreted by dvipng itself. An attempt is also made
to respect the PGF header. The non-rendering specials from
‘<samp>hyperref</samp>’ are handled via some heuristics and do not give an
error.
</p>
<p>Really rendering and moving things with raw PostScript specials is more
troublesome. The \rotatebox macro serves as a good example. The dvips
driver of the graphicx package surrounds DVI glyphs with PostScript code
so that after conversion by dvips, the glyphs (now themselves in
PostScript) will be rotated in the desired way. dvipng does not handle
this, at present. An attempt has been made to handle the rendering
specials output by PGF (tikz), and also PSTricks. Some things work, but
others do not. This is especially clear when mixing PostScript and DVI
rendering commands such as glyphs. dvipng cannot at present detect if
PostScript code moves ‘<samp>currentpoint</samp>’ or rotates the frame since
GhostScript does not return such information. A recommendation would be
to produce images from these packages as EPS files and include them into
your document in the standard manner.
</p>
<p>Another way to handle this would be to use a slower fallback (with dvips
and gs, for example). If you want to disable raw PostScript handling in
dvipng, use the switch ‘<samp>--norawps</samp>’. This switch turns off the
internal call to GhostScript intended to display these raw PostScript
specials. Further, when dvipng encounters raw PostScript and the gs call
is turned off, it gives a warning. It is now possible to use the switch
‘<samp>--picky</samp>’ to disable page rendering of pages with warnings, and use
the slower fallback for these pages.
</p>
<hr>
<a name="Color"></a>
<div class="header">
<p>
Next: <a href="#Diagnosing-problems" accesskey="n" rel="next">Diagnosing problems</a>, Previous: <a href="#Graphics" accesskey="p" rel="prev">Graphics</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Color-1"></a>
<h2 class="chapter">6 Color</h2>
<p>To support color, dvipng recognizes a certain set of specials as
generated by the ‘<samp>color</samp>’ and ‘<samp>xcolor</samp>’ style files. These
specials start with the keyword ‘<samp>color</samp>’ or the keyword
‘<samp>background</samp>’, followed by a color specification.
</p>
<table class="menu" border="0" cellspacing="0">
<tr><td align="left" valign="top">• <a href="#Color-specifications" accesskey="1">Color specifications</a>:</td><td> </td><td align="left" valign="top">
</td></tr>
<tr><td align="left" valign="top">• <a href="#Color-specials" accesskey="2">Color specials</a>:</td><td> </td><td align="left" valign="top">
</td></tr>
</table>
<hr>
<a name="Color-specifications"></a>
<div class="header">
<p>
Next: <a href="#Color-specials" accesskey="n" rel="next">Color specials</a>, Up: <a href="#Color" accesskey="u" rel="up">Color</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Color-specifications-1"></a>
<h3 class="section">6.1 Color specifications</h3>
<a name="index-color-specifications"></a>
<p>The color specification supported by dvipng is by-value or by-name. The
by-value spec starts with the name of a color model (one of ‘<samp>rgb</samp>’,
‘<samp>hsb</samp>’, ‘<samp>cmy</samp>’, ‘<samp>cmyk</samp>’, or ‘<samp>gray</samp>’) followed by the
appropriate number of parameters. Thus, the color specification
‘<samp>rgb 0.3 0.4 0.5</samp>’ would correspond to the color that is ‘<samp>0.3
0.4 0.5</samp>’ in its red, blue and green values. The color model used
internally in dvipng is ‘<samp>RGB</samp>’ (discretized to 256 levels), for
details on the formulas used in conversion, see the ‘<samp>xcolor</samp>’
documentation.
</p>
<p>By-name color specifications are single (case-dependent) words and are
compared with color names defined in ‘<samp>dvipsnam.def</samp>’ (from the
‘<samp>graphics</samp>’ bundle), ‘<samp>svgnam.def</samp>’ and ‘<samp>xcolor.sty</samp>’ (from
the ‘<samp>xcolor</samp>’ bundle). See the ‘<samp>xcolor</samp>’ documentation for a
list of names and the corresponding colors.
</p>
<p>On the command-line, the name ‘<samp>Transparent</samp>’ can also be used as
an argument to ‘<samp>--bg</samp>’ to choose transparent background.
See <a href="#Option-details">Option details</a>.
</p>
<hr>
<a name="Color-specials"></a>
<div class="header">
<p>
Previous: <a href="#Color-specifications" accesskey="p" rel="prev">Color specifications</a>, Up: <a href="#Color" accesskey="u" rel="up">Color</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Color-specials-1"></a>
<h3 class="section">6.2 Color specials</h3>
<p>We will describe ‘<samp>background</samp>’ first, since it is the simplest. The
‘<samp>background</samp>’ keyword must be followed by a color specification.
That color specification is used as a fill color for the background. The
last ‘<samp>background</samp>’ special on a page is the one that gets used, and
is used for the whole of the page image. (This is possible because the
prescan phase of dvipng notices all of the color specials so that the
appropriate information can be written out during the second phase.)
</p>
<p>The ‘<samp>color</samp>’ special itself has three forms. The first is just
‘<samp>color</samp>’ followed by a color specification. In this case, the
current global color is set to that color; the color stack must be empty
when such a command is executed.
</p>
<p>The second form is ‘<samp>color push</samp>’ followed by a color specification.
This saves the current color on the color stack and sets the color to be
that given by the color specification. This is the most common way to
set a color.
</p>
<p>The final form of the ‘<samp>color</samp>’ special is just ‘<samp>color pop</samp>’,
with no color specification; this says to pop the color last pushed on
the color stack from the color stack and set the current color to be
that color.
</p>
<p>dvipng correctly handles these color specials across pages, even when
the pages are rendered repeatedly or in reverse order.
</p>
<hr>
<a name="Diagnosing-problems"></a>
<div class="header">
<p>
Next: <a href="#Credits" accesskey="n" rel="next">Credits</a>, Previous: <a href="#Color" accesskey="p" rel="prev">Color</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Diagnosing-problems-1"></a>
<h2 class="chapter">7 Diagnosing problems</h2>
<a name="index-problems"></a>
<a name="index-trouble"></a>
<a name="index-debugging-1"></a>
<p>You’ve gone through all the trouble of installing dvipng, carefully read
all the instructions in this manual, and still can’t get something to
work. The following sections provide some helpful hints if you find
yourself in such a situation.
</p>
<table class="menu" border="0" cellspacing="0">
<tr><td align="left" valign="top">• <a href="#Contact-information" accesskey="1">Contact information</a>:</td><td> </td><td align="left" valign="top">Who to ask.
</td></tr>
<tr><td align="left" valign="top">• <a href="#Debug-options" accesskey="2">Debug options</a>:</td><td> </td><td align="left" valign="top">Getting diagnostics.
</td></tr>
</table>
<hr>
<a name="Contact-information"></a>
<div class="header">
<p>
Next: <a href="#Debug-options" accesskey="n" rel="next">Debug options</a>, Up: <a href="#Diagnosing-problems" accesskey="u" rel="up">Diagnosing problems</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Contact-information-1"></a>
<h3 class="section">7.1 Contact information</h3>
<p>Bug reports should be sent to
<a href="mailto:dvipng@nongnu.org">dvipng@nongnu.org</a>.
</p>
<p>Questions, suggestions for new features, pleas for help, and/or praise
should go to <a href="mailto:dvipng@nongnu.org">dvipng@nongnu.org</a>. For more information on this
mailing list, send a message with just the word ‘help’ as subject or
body to <a href="mailto:dvipng-request@nongnu.org">dvipng-request@nongnu.org</a> or look at
<a href="http://lists.nongnu.org/mailman/listinfo/dvipng">http://lists.nongnu.org/mailman/listinfo/dvipng</a>.
</p>
<p>Offers to support further development will be appreciated. For developer
access, ask on <a href="mailto:dvipng@nongnu.org">dvipng@nongnu.org</a>.
</p>
<p>For details on the TeX path-searching library, and <code>mktexpk</code>
problems, see <a href="http://tug.org/texinfohtml/kpathsea.html#Common-problems">Common problems</a> in <cite>Kpathsea</cite>.
</p>
<hr>
<a name="Debug-options"></a>
<div class="header">
<p>
Previous: <a href="#Contact-information" accesskey="p" rel="prev">Contact information</a>, Up: <a href="#Diagnosing-problems" accesskey="u" rel="up">Diagnosing problems</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Debug-options-1"></a>
<h3 class="section">7.2 Debug options</h3>
<p>The ‘<samp>-d</samp>’ flag to dvipng helps in tracking down certain errors. The
parameter to this flag is an integer that tells what errors are
currently being tracked. To track a certain class of debug messages,
simply provide the appropriate number given below; if you wish to track
multiple classes, sum the numbers of the classes you wish to track. To
track all classes, you can use <code>-1</code>.
</p>
<p>Some of these debugging options are actually provided by Kpathsea
(see <a href="http://tug.org/texinfohtml/kpathsea.html#Debugging">Debugging</a> in <cite>Kpathsea</cite>).
</p>
<p>The classes are:
</p><dl compact="compact">
<dt>1</dt>
<dd><p>Normal dvi op-codes
</p></dd>
<dt>2</dt>
<dd><p>Virtual fonts
</p></dd>
<dt>4</dt>
<dd><p>PK fonts
</p></dd>
<dt>8</dt>
<dd><p>TFM files
</p></dd>
<dt>16</dt>
<dd><p>Glyph rendering
</p></dd>
<dt>32</dt>
<dd><p>FreeType calls
</p></dd>
<dt>64</dt>
<dd><p>Encoding loads
</p></dd>
<dt>128</dt>
<dd><p>Color specials
</p></dd>
<dt>256</dt>
<dd><p>GhostScript specials
</p></dd>
<dt>512</dt>
<dd><p>Kpathsea <code>stat</code> calls
</p></dd>
<dt>1024</dt>
<dd><p>Kpathsea hash table lookups
</p></dd>
<dt>2048</dt>
<dd><p>Kpathsea path element expansion
</p></dd>
<dt>4096</dt>
<dd><p>Kpathsea path searches
</p>
</dd>
</dl>
<hr>
<a name="Credits"></a>
<div class="header">
<p>
Next: <a href="#Copying" accesskey="n" rel="next">Copying</a>, Previous: <a href="#Diagnosing-problems" accesskey="p" rel="prev">Diagnosing problems</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Credits-1"></a>
<h2 class="chapter">8 Credits</h2>
<p>A number of persons have contributed, if I forget to mention someone,
I apologize. First and foremost we have David Kastrup whose
preview-latex project provided the incentive to write this program.
There is also a number of people who have contributed by reporting
bugs and suggesting improvements as the thing has evolved. These
include but is perhaps not limited to (in semi-random order): Thomas
Esser (teTeX), Christian Schenk (MIKTeX), Brian R Furry (debian
package), Angus Leeming (LyX), Thomas Boutell (libgd), John Jones
(first user report), Uwe Kern (xcolor), Karl Berry and Peter
Breitenlohner (TeX Live), David Harvey (hinting in Freetype), Neal
Harmon, Alan Shutko, Reiner Stieb, Nick Alcock, Adam Buchbinder, Svend
Tollak Munkejord, James Longstreet, Bernhard Simon, Bob McElrath,
Georg Schwarz, Jason Farmer, Brian V. Smith, Samuel Hathaway, Thomas
R. Shemanske, Stephen Gibson, Christian Ridderström, Ezra Peisach,
William H Wheeler, Thomas Klausner, Harald Koenig, Adrian Bunk, Kevin
Smith, Jason Riedy, Wolfram Krause, Reinhard Kotucha, Takeshi Abe, and
Waldeck Schutzer.
</p>
<hr>
<a name="Copying"></a>
<div class="header">
<p>
Next: <a href="#Index" accesskey="n" rel="next">Index</a>, Previous: <a href="#Credits" accesskey="p" rel="prev">Credits</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Copying-1"></a>
<h2 class="chapter">9 Copying</h2>
<p>This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
</p>
<p>This program is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
</p>
<p>You should have received a copy of the GNU Lesser General Public
License along with this program. If not, see
<http://www.gnu.org/licenses/>.
</p>
<br>
<br>
<p>Copyright © 2002-2015 Jan-Åke Larsson
</p>
<hr>
<a name="Index"></a>
<div class="header">
<p>
Previous: <a href="#Copying" accesskey="p" rel="prev">Copying</a>, Up: <a href="#Top" accesskey="u" rel="up">Top</a> [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
<a name="Index-1"></a>
<h2 class="unnumbered">Index</h2>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter" href="#Index_cp_symbol-1"><b>-</b></a>
<br>
<a class="summary-letter" href="#Index_cp_letter-A"><b>A</b></a>
<a class="summary-letter" href="#Index_cp_letter-B"><b>B</b></a>
<a class="summary-letter" href="#Index_cp_letter-C"><b>C</b></a>
<a class="summary-letter" href="#Index_cp_letter-D"><b>D</b></a>
<a class="summary-letter" href="#Index_cp_letter-E"><b>E</b></a>
<a class="summary-letter" href="#Index_cp_letter-F"><b>F</b></a>
<a class="summary-letter" href="#Index_cp_letter-G"><b>G</b></a>
<a class="summary-letter" href="#Index_cp_letter-H"><b>H</b></a>
<a class="summary-letter" href="#Index_cp_letter-I"><b>I</b></a>
<a class="summary-letter" href="#Index_cp_letter-L"><b>L</b></a>
<a class="summary-letter" href="#Index_cp_letter-M"><b>M</b></a>
<a class="summary-letter" href="#Index_cp_letter-N"><b>N</b></a>
<a class="summary-letter" href="#Index_cp_letter-O"><b>O</b></a>
<a class="summary-letter" href="#Index_cp_letter-P"><b>P</b></a>
<a class="summary-letter" href="#Index_cp_letter-Q"><b>Q</b></a>
<a class="summary-letter" href="#Index_cp_letter-R"><b>R</b></a>
<a class="summary-letter" href="#Index_cp_letter-S"><b>S</b></a>
<a class="summary-letter" href="#Index_cp_letter-T"><b>T</b></a>
<a class="summary-letter" href="#Index_cp_letter-W"><b>W</b></a>
</td></tr></table>
<table class="index-cp" border="0">
<tr><td></td><th align="left">Index Entry</th><td> </td><th align="left"> Section</th></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_symbol-1">-</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-_002ddSAFER">-dSAFER</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-A">A</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-absolute-page-number_002c-and-_002dl">absolute page number, and ‘<samp>-l</samp>’</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-absolute-page-number_002c-and-_002dp">absolute page number, and ‘<samp>-p</samp>’</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-antialiasing-levels_002c-number-of">antialiasing levels<span class="roman">, number of</span></a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-B">B</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-background-color-_0028option_0029">background color (option)</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-base-resolution_002c-setting">base resolution, setting</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-baseline-reporting">baseline reporting</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-baseline-reporting-1">baseline reporting</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-C">C</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-color-specifications">color specifications</a>:</td><td> </td><td valign="top"><a href="#Color-specifications">Color specifications</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-command_002dline-options">command-line options</a>:</td><td> </td><td valign="top"><a href="#Command_002dline-options">Command-line options</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-compilation">compilation</a>:</td><td> </td><td valign="top"><a href="#Installation">Installation</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-compression">compression</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-configuration_002c-of-dvipng">configuration, of dvipng</a>:</td><td> </td><td valign="top"><a href="#Installation">Installation</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-D">D</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-dark-fonts">dark fonts</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-debugging">debugging</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-debugging-1">debugging</a>:</td><td> </td><td valign="top"><a href="#Diagnosing-problems">Diagnosing problems</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-depth-reporting">depth reporting</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-E">E</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-exit-on-erroneous-images">exit on erroneous images</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-F">F</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-first-page-printed">first page printed</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-follow-mode">follow mode</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-font-generation_002c-avoiding">font generation, avoiding</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-forcing-palette-output">forcing palette output</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-foreground-color-_0028option_0029">foreground color (option)</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-FreeType-font-rendering">FreeType font rendering</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-fuzzy-images">fuzzy images</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-G">G</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-gamma">gamma</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-GhostScript-and-_002ddSAFER">GhostScript and -dSAFER</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-GhostScript_002c-turning-off">GhostScript, turning off</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-GIF-image-format">GIF image format</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-H">H</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-height-reporting">height reporting</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-I">I</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-installation_002c-of-dvipng">installation, of dvipng</a>:</td><td> </td><td valign="top"><a href="#Installation">Installation</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-invoking-dvipng">invoking dvipng</a>:</td><td> </td><td valign="top"><a href="#Basic-usage">Basic usage</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-L">L</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-last-page-printed">last page printed</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-light-fonts">light fonts</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-M">M</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-magnification_002c-overriding-DVI">magnification, overriding DVI</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-Metafont-mode_002c-specifying">Metafont mode, specifying</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-mktexpk_002c-avoiding"><code>mktexpk<span class="roman">, avoiding</span></code></a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-mode-name_002c-specifying">mode name, specifying</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-N">N</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-no-erroneous-images">no erroneous images</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-O">O</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-offset-pages">offset pages</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-option_002c-details-of">option, details of</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-options_002c-dvipng">options, dvipng</a>:</td><td> </td><td valign="top"><a href="#Command_002dline-options">Command-line options</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-options_002c-reading-from-standard-input">options, reading from standard input</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-options_002c-summary">options, summary</a>:</td><td> </td><td valign="top"><a href="#Option-summary">Option summary</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-output-resolution_002c-setting">output resolution, setting</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-output_002c-redirecting">output, redirecting</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-P">P</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-page-range">page range</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-page_002c-first-printed">page, first printed</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-page_002c-last-printed">page, last printed</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-physical-page-number_002c-and-_002dl">physical page number, and ‘<samp>-l</samp>’</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-physical-page-number_002c-and-_002dp">physical page number, and ‘<samp>-p</samp>’</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-PNG-image-format">PNG image format</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-PostScript-inclusion-problems">PostScript inclusion problems</a>:</td><td> </td><td valign="top"><a href="#Encapsulated-PostScript">Encapsulated PostScript</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-PostScript_002c-turning-off-raw-PostScript-specials">PostScript, turning off raw PostScript specials</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-problems">problems</a>:</td><td> </td><td valign="top"><a href="#Diagnosing-problems">Diagnosing problems</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-Q">Q</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-quality">quality</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-quiet-operation">quiet operation</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-R">R</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-reverse-pagination">reverse pagination</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-S">S</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-silent-operation">silent operation</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-standard-input_002c-reading-options-from">standard input, reading options from</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-standard-output_002c-output-to">standard output, output to</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-T">T</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-transparent-border-fallback-color">transparent border fallback color</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-transparent-border-width">transparent border width</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-trouble">trouble</a>:</td><td> </td><td valign="top"><a href="#Diagnosing-problems">Diagnosing problems</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-truecolor-output">truecolor output</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-W">W</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-warnings_002c-suppressing">warnings, suppressing</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-width-reporting">width reporting</a>:</td><td> </td><td valign="top"><a href="#Option-details">Option details</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
</table>
<table><tr><th valign="top">Jump to: </th><td><a class="summary-letter" href="#Index_cp_symbol-1"><b>-</b></a>
<br>
<a class="summary-letter" href="#Index_cp_letter-A"><b>A</b></a>
<a class="summary-letter" href="#Index_cp_letter-B"><b>B</b></a>
<a class="summary-letter" href="#Index_cp_letter-C"><b>C</b></a>
<a class="summary-letter" href="#Index_cp_letter-D"><b>D</b></a>
<a class="summary-letter" href="#Index_cp_letter-E"><b>E</b></a>
<a class="summary-letter" href="#Index_cp_letter-F"><b>F</b></a>
<a class="summary-letter" href="#Index_cp_letter-G"><b>G</b></a>
<a class="summary-letter" href="#Index_cp_letter-H"><b>H</b></a>
<a class="summary-letter" href="#Index_cp_letter-I"><b>I</b></a>
<a class="summary-letter" href="#Index_cp_letter-L"><b>L</b></a>
<a class="summary-letter" href="#Index_cp_letter-M"><b>M</b></a>
<a class="summary-letter" href="#Index_cp_letter-N"><b>N</b></a>
<a class="summary-letter" href="#Index_cp_letter-O"><b>O</b></a>
<a class="summary-letter" href="#Index_cp_letter-P"><b>P</b></a>
<a class="summary-letter" href="#Index_cp_letter-Q"><b>Q</b></a>
<a class="summary-letter" href="#Index_cp_letter-R"><b>R</b></a>
<a class="summary-letter" href="#Index_cp_letter-S"><b>S</b></a>
<a class="summary-letter" href="#Index_cp_letter-T"><b>T</b></a>
<a class="summary-letter" href="#Index_cp_letter-W"><b>W</b></a>
</td></tr></table>
<hr>
</body>
</html>
|