Commit 356e71522856b73456bb82b3ddbd253f441fa209
1 parent
83d82a85
Hand-coded PostScript logo; semi-automated svg logo
Showing
2 changed files
with
131 additions
and
0 deletions
logo/qpdf.ps
0 → 100644
| 1 | +%!PS-Adobe-2.0 EPSF-2.0 | |
| 2 | +%%Creator: E. Jay Berkenbilt | |
| 3 | +%%Title: qpdf logo | |
| 4 | +%%CreationDate: $Date: 2000/02/11 03:25:50 $ | |
| 5 | +%%Orientation: Portrait | |
| 6 | +%%BoundingBox: 0 0 512 420 | |
| 7 | +%%Pages: 0 | |
| 8 | +%%EndComments | |
| 9 | +% | |
| 10 | +% $Id: postscript,v 1.4 2000/02/11 03:25:50 ejb Exp $ | |
| 11 | +% $Source: /home/ejb/templates/RCS/postscript,v $ | |
| 12 | +% $Author: ejb $ | |
| 13 | +% | |
| 14 | + | |
| 15 | +% | |
| 16 | +% To generate svg: | |
| 17 | +% * Use ps2pdf to convert to pdf | |
| 18 | +% * Edit the mediabox of the page in the pdf to match the bounding box | |
| 19 | +% * Use pdf2svg to generate the svg file | |
| 20 | +% | |
| 21 | + | |
| 22 | +%%BeginProlog | |
| 23 | + | |
| 24 | +% Bounding box and page bounding box must match fullwidth and fullheight. | |
| 25 | +/fullheight 420 def % must be { outerheight linewidth add } | |
| 26 | +/fullwidth 512 def | |
| 27 | + | |
| 28 | +/linewidth 10 def | |
| 29 | +/outerwidth fullwidth linewidth sub def | |
| 30 | +/radius 30 def | |
| 31 | +/letterwidth 80 def | |
| 32 | +/fudge .08 def | |
| 33 | +/letterheight letterwidth 2 mul def | |
| 34 | +/outerheight letterheight 2 mul radius 3 mul add def | |
| 35 | +/space outerwidth letterwidth 4 mul sub 5 div def | |
| 36 | +/margin space def | |
| 37 | + | |
| 38 | +% radius drawOuter | |
| 39 | +/drawOuter { | |
| 40 | + gsave | |
| 41 | + newpath | |
| 42 | + linewidth setlinewidth | |
| 43 | + radius 0 moveto | |
| 44 | + outerwidth 0 outerwidth radius radius arcto | |
| 45 | + outerwidth outerheight outerheight radius sub outerheight radius arcto | |
| 46 | + 0 outerheight 0 outerheight radius sub radius arcto | |
| 47 | + 0 0 radius 0 radius arcto | |
| 48 | + closepath | |
| 49 | + stroke | |
| 50 | + grestore | |
| 51 | +} def | |
| 52 | + | |
| 53 | +% r draw-circle -- draw circle centered at current point | |
| 54 | +/draw-circle { | |
| 55 | + 1 dict begin | |
| 56 | + /r exch def | |
| 57 | + currentpoint exch r sub exch r 0 360 arc | |
| 58 | + end | |
| 59 | +} def | |
| 60 | + | |
| 61 | +%%EndProlog | |
| 62 | + | |
| 63 | +%%Page: 1 1 | |
| 64 | +%%PageBoundingBox: 0 0 512 420 | |
| 65 | + | |
| 66 | +linewidth 2 div fullheight outerheight sub 2 div translate | |
| 67 | +drawOuter | |
| 68 | +gsave | |
| 69 | + linewidth setlinewidth | |
| 70 | + 1 setlinecap | |
| 71 | + newpath | |
| 72 | + % position to left of q | |
| 73 | + margin outerheight 2 div moveto | |
| 74 | + % draw q | |
| 75 | + letterwidth letterwidth 2 div rmoveto | |
| 76 | + letterwidth 2 div draw-circle | |
| 77 | + 0 letterheight letterwidth 2 div add radius sub neg rlineto | |
| 78 | + currentpoint radius sub % x1 y1 | |
| 79 | + 2 copy exch letterwidth add exch % x2 y2 | |
| 80 | + radius arcto | |
| 81 | + letterwidth 3 mul space 3 mul add radius 2 mul sub 0 rlineto | |
| 82 | + currentpoint exch radius add exch | |
| 83 | + 2 copy radius add | |
| 84 | + radius arcto | |
| 85 | + 0 letterheight rlineto | |
| 86 | + | |
| 87 | + % position to left of p | |
| 88 | + margin letterwidth space add add outerheight 2 div moveto | |
| 89 | + space fudge mul 0 rmoveto | |
| 90 | + letterwidth letterwidth 2 div rmoveto | |
| 91 | + letterwidth 2 div draw-circle | |
| 92 | + letterwidth neg 0 rmoveto | |
| 93 | + 0 letterheight letterwidth 2 div sub neg rlineto | |
| 94 | + | |
| 95 | + % position to left of d | |
| 96 | + margin letterwidth space add 2 mul add outerheight 2 div moveto | |
| 97 | + space fudge mul neg 0 rmoveto | |
| 98 | + letterwidth letterwidth 2 div rmoveto | |
| 99 | + letterwidth 2 div draw-circle | |
| 100 | + 0 letterheight letterwidth 2 div sub rlineto | |
| 101 | + | |
| 102 | + % position to left of f | |
| 103 | + margin letterwidth space add 3 mul add outerheight 2 div moveto | |
| 104 | + % draw f | |
| 105 | + currentpoint letterheight add | |
| 106 | + 2 copy exch radius add exch | |
| 107 | + radius arcto | |
| 108 | + currentpoint exch radius sub letterwidth add exch | |
| 109 | + 2 copy radius sub | |
| 110 | + radius arcto | |
| 111 | + letterwidth neg letterheight | |
| 112 | + letterwidth sub radius sub | |
| 113 | + linewidth 2 div add neg rmoveto | |
| 114 | + letterwidth .8 mul 0 rlineto | |
| 115 | + | |
| 116 | + | |
| 117 | + stroke | |
| 118 | +grestore | |
| 119 | + | |
| 120 | +%%PageTrailer | |
| 121 | + | |
| 122 | +%%Trailer | |
| 123 | + | |
| 124 | +%%EOF | ... | ... |
logo/qpdf.svg
0 → 100644
| 1 | +<?xml version="1.0" encoding="UTF-8"?> | |
| 2 | +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="512pt" height="420pt" viewBox="0 0 512 420" version="1.1"> | |
| 3 | +<g id="surface1"> | |
| 4 | +<path style="fill:none;stroke-width:100;stroke-linecap:butt;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 350 50 L 4770 50 C 4935.664062 50 5070 184.296875 5070 350 L 5070 3850 C 5070 4015.664062 4935.664062 4150 4770 4150 L 350 4150 C 184.296875 4150 50 4015.664062 50 3850 L 50 350 C 50 184.296875 184.296875 50 350 50 Z M 350 50 " transform="matrix(0.1,0,0,-0.1,0,420)"/> | |
| 5 | +<path style="fill:none;stroke-width:100;stroke-linecap:round;stroke-linejoin:miter;stroke:rgb(0%,0%,0%);stroke-opacity:1;stroke-miterlimit:10;" d="M 1213.984375 2500 C 1213.984375 2720.898438 1034.921875 2900 813.984375 2900 C 593.085938 2900 413.984375 2720.898438 413.984375 2500 C 413.984375 2279.101562 593.085938 2100 813.984375 2100 C 1034.921875 2100 1213.984375 2279.101562 1213.984375 2500 L 1213.984375 800 C 1213.984375 634.296875 1348.320312 500 1513.984375 500 L 4406.015625 500 C 4571.679688 500 4706.015625 634.296875 4706.015625 800 L 4706.015625 2400 M 2407.109375 2500 C 2407.109375 2720.898438 2228.046875 2900 2007.109375 2900 C 1786.210938 2900 1607.109375 2720.898438 1607.109375 2500 C 1607.109375 2279.101562 1786.210938 2100 2007.109375 2100 C 2228.046875 2100 2407.109375 2279.101562 2407.109375 2500 M 1607.109375 2500 L 1607.109375 1300 M 3512.890625 2500 C 3512.890625 2720.898438 3333.789062 2900 3112.890625 2900 C 2891.953125 2900 2712.890625 2720.898438 2712.890625 2500 C 2712.890625 2279.101562 2891.953125 2100 3112.890625 2100 C 3333.789062 2100 3512.890625 2279.101562 3512.890625 2500 L 3512.890625 3700 M 3906.015625 2100 L 3906.015625 3400 C 3906.015625 3565.664062 4040.3125 3700 4206.015625 3700 L 4406.015625 3700 C 4571.679688 3700 4706.015625 3565.664062 4706.015625 3400 M 3906.015625 2850 L 4546.015625 2850 " transform="matrix(0.1,0,0,-0.1,0,420)"/> | |
| 6 | +</g> | |
| 7 | +</svg> | ... | ... |