現在、imagickを使用して、サーバーに保存せずにいくつかの画像を生成してブラウザに出力しようとしています。私の選択した方法は、php用のimagick拡張機能を備えた画像マジックでした。ドキュメントを読んだところ、パッケージが自分のマシン(Windows XP、XAMPP付き)にインストールされていると確信しています。クラスがインストールされています
imagick module enabled
imagick module version 2.0.0-alpha
imagick classes Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator
ImageMagick version ImageMagick 6.3.3 04/21/07 Q16 http://www.imagemagick.org
ImageMagick release date 04/21/07
ImageMagick Number of supported formats: 164
ImageMagick Supported formats A, ART, AVI, AVS, B, BIE, BMP, BMP2, BMP3, C, CACHE, CAPTION, CIN, CIP, CLIP, CLIPBOARD, CMYK, CMYKA, CUR, CUT, DCM, DCX, DFONT, DPS, DPX, EMF, EPDF, EPI, EPS, EPS2, EPS3, EPSF, EPSI, EPT, EPT2, EPT3, FAX, FITS, FRACTAL, FTS, G, G3, GIF, GIF87, GRADIENT, GRAY, HISTOGRAM, HTM, HTML, ICB, ICO, ICON, INFO, JBG, JBIG, JNG, JP2, JPC, JPEG, JPG, JPX, K, LABEL, M, M2V, MAP, MAT, MATTE, MIFF, MNG, MONO, MPC, MPEG, MPG, MSL, MSVG, MTV, MVG, NULL, O, OTB, OTF, PAL, PALM, PAM, PATTERN, PBM, PCD, PCDS, PCL, PCT, PCX, PDB, PDF, PFA, PFB, PGM, PGX, PICON, PICT, PIX, PJPEG, PLASMA, PNG, PNG24, PNG32, PNG8, PNM, PPM, PREVIEW, PS, PS2, PS3, PSD, PTIF, PWP, R, RAS, RGB, RGBA, RGBO, RLA, RLE, SCR, SCT, SFW, SGI, SHTML, STEGANO, SUN, SVG, SVGZ, TEXT, TGA, THUMBNAIL, TIFF, TILE, TIM, TTC, TTF, TXT, UIL, UYVY, VDA, VICAR, VID, VIFF, VST, WBMP, WMF, WMFWIN32, WMZ, WPG, X, XBM, XC, XCF, XPM, XV, XWD, Y, YCbCr, YCbCrA, YUV
これはphpinfoからのものなので、インストールされていることがわかります。画像を生成して保存しようとすると問題なく動作しますが、画像を直接出力しようとすると、スクリプトのURLが画像として取得されます。
$draw = new ImagickDraw();
$draw->setFont('AnkeCalligraph.TTF');
$draw->setFontSize(52);
$draw->annotation(110, 110, "Hello World!");
$draw->annotation(50, 220, "Hello World!");
$canvas = new Imagick('./pictures/test_live.PNG');
$canvas->drawImage($draw);
$canvas->setImageFormat('png');
header("Content-Type: image/png");
echo $canvas;
これは使用されるコードです。writeimageを使用すると、サーバー上のファイルは問題なく作成されます。誰かが私が間違っていることについて何か考えを持っていますか?