I'm attempting to create a JPG from SVG text. A representative version is found here:
Code: Select all
<?xml version="1.0" standalone="no"?>
<svg xmlns:svg="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" contentScriptType="text/ecmascript" contentStyleType="text/css" height="2175" preserveAspectRatio="none" version="1.1" viewBox="0 0 1538 2175" width="1538" xml:space="preserve" zoomAndPan="magnify">
<g transform="translate(358,330)">
<g transform="translate(412.5,0)">
<text fill="#000000" font-family="Lucida Sans" font-size="75" height="266" text-anchor="middle" width="825" xml:space="preserve">
<tspan x="0" xml:space="preserve" y="58.02437697784809">Lorem ipsum dolor sit amet,</tspan>
<tspan x="0" xml:space="preserve" y="148.0243769778481">consectetur adipiscing elit.</tspan>
<tspan x="0" xml:space="preserve" y="238.02437697784808">Sed semper facilisis erat non lobortis.</tspan>
</text>
</g>
</g>
</svg>
An output image can be seen here:
http://www.mediafire.com/imageview.php? ... av5pb9asaz
It seems that the SVG is rendering okay, but terminates prior to finishing the entire image. Identify shows this as a corrupt image when I write it to disk. Interestingly, if I take the output straight from stdout and send the bytes to a web browser, the image renders without issue. If I write the image to disk, it becomes what you see above.
I tried it on 6.6.4 and 6.6.6 with no luck. 6.6.2 worked correctly, however. It only seems to happen on Linux, as my local Windows machine seems to render the image fine in both cases. Here is my output from the command line attempts:
Code: Select all
/usr/local/sites/imagemagick-666/bin/convert segfault.svg jpg:segfaultsvg.jpg
Segmentation fault
/usr/local/sites/imagemagick-664/bin/convert segfault.svg jpg:segfaultsvg.jpg
Segmentation fault
Code: Select all
/usr/local/sites/imagemagick-666/bin/convert -debug all segfault.svg jpg:segfaultsvg.jpg
2010-11-30T14:46:58-05:00 0:00.000 0.000u 6.6.6 Configure convert[8154]: utility.c/ExpandFilenames/906/Configure
Command line: /usr/local/sites/imagemagick-666/bin/convert {-debug} {all} {segfault.svg} {jpg:segfaultsvg.jpg}
2010-11-30T14:46:58-05:00 0:00.000 0.000u 6.6.6 Configure convert[8154]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/usr/local/sites/imagemagick-666/share/ImageMagick-6.6.6/config/coder.xml"
2010-11-30T14:46:58-05:00 0:00.000 0.000u 6.6.6 Configure convert[8154]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/usr/local/sites/imagemagick-666/lib/ImageMagick-6.6.6/config/coder.xml"
2010-11-30T14:46:58-05:00 0:00.000 0.000u 6.6.6 Configure convert[8154]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/usr/local/sites/imagemagick-666/share/doc/ImageMagick-6.6.6/coder.xml"
2010-11-30T14:46:58-05:00 0:00.000 0.000u 6.6.6 Configure convert[8154]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/usr/local/sites/imagemagick-666/share/ImageMagick-6.6.6/coder.xml"
2010-11-30T14:46:58-05:00 0:00.000 0.000u 6.6.6 Configure convert[8154]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/home/posterChild/.magick/coder.xml"
2010-11-30T14:46:58-05:00 0:00.000 0.000u 6.6.6 Configure convert[8154]: coder.c/LoadCoderList/690/Configure
Loading coder configuration file "/usr/local/sites/imagemagick-666/share/ImageMagick-6.6.6/config/coder.xml" ...
2010-11-30T14:46:58-05:00 0:00.000 0.000u 6.6.6 Module convert[8154]: module.c/OpenModule/1262/Module
Searching for module "SVG" using filename "svg.la"
2010-11-30T14:46:58-05:00 0:00.000 0.000u 6.6.6 Module convert[8154]: module.c/GetMagickModulePath/565/Module
Searching for coder module file "svg.la" ...
2010-11-30T14:46:58-05:00 0:00.000 0.000u 6.6.6 Module convert[8154]: module.c/OpenModule/1271/Module
Opening module at path "/usr/local/sites/imagemagick-666/lib/ImageMagick-6.6.6/modules-Q8/coders/svg.la"
2010-11-30T14:46:58-05:00 0:00.000 0.000u 6.6.6 Module convert[8154]: module.c/OpenModule/1298/Module
Method "RegisterSVGImage" in module "SVG" at address 0x2af215a57200
2010-11-30T14:46:58-05:00 0:00.000 0.000u 6.6.6 Module convert[8154]: module.c/OpenModule/1312/Module
Method "UnregisterSVGImage" in module "SVG" at address 0x2af215a571c0
2010-11-30T14:46:58-05:00 0:00.010 0.000u 6.6.6 Policy convert[8154]: policy.c/IsRightsAuthorized/485/Policy
Domain: Path; rights=Read; pattern="segfault.svg" ...
2010-11-30T14:46:58-05:00 0:00.010 0.000u 6.6.6 Blob convert[8154]: blob.c/OpenBlob/2477/Blob
read 3 magic header bytes
2010-11-30T14:46:58-05:00 0:00.010 0.000u 6.6.6 Cache convert[8154]: cache.c/DestroyPixelCache/1507/Cache
destroy
2010-11-30T14:46:58-05:00 0:00.010 0.000u 6.6.6 Configure convert[8154]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/usr/local/sites/imagemagick-666/share/ImageMagick-6.6.6/config/magic.xml"
2010-11-30T14:46:58-05:00 0:00.010 0.000u 6.6.6 Configure convert[8154]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/usr/local/sites/imagemagick-666/lib/ImageMagick-6.6.6/config/magic.xml"
2010-11-30T14:46:58-05:00 0:00.010 0.000u 6.6.6 Configure convert[8154]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/usr/local/sites/imagemagick-666/share/doc/ImageMagick-6.6.6/magic.xml"
2010-11-30T14:46:58-05:00 0:00.010 0.000u 6.6.6 Configure convert[8154]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/usr/local/sites/imagemagick-666/share/ImageMagick-6.6.6/magic.xml"
2010-11-30T14:46:58-05:00 0:00.010 0.000u 6.6.6 Configure convert[8154]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/home/posterChild/.magick/magic.xml"
2010-11-30T14:46:58-05:00 0:00.010 0.000u 6.6.6 Configure convert[8154]: magic.c/LoadMagicList/678/Configure
Loading magic configure file "/usr/local/sites/imagemagick-666/share/ImageMagick-6.6.6/config/magic.xml" ...
2010-11-30T14:46:58-05:00 0:00.010 0.000u 6.6.6 Policy convert[8154]: policy.c/IsRightsAuthorized/485/Policy
Domain: Coder; rights=Read; pattern="SVG" ...
2010-11-30T14:46:58-05:00 0:00.010 0.000u 6.6.6 Policy convert[8154]: policy.c/IsRightsAuthorized/485/Policy
Domain: Path; rights=Read; pattern="segfault.svg" ...
2010-11-30T14:46:58-05:00 0:00.010 0.000u 6.6.6 Blob convert[8154]: blob.c/OpenBlob/2477/Blob
read 3 magic header bytes
2010-11-30T14:46:58-05:00 0:00.010 0.000u 6.6.6 Resource convert[8154]: resource.c/AcquireMagickResource/262/Resource
Area: 13.38MB/13.38MB/2.0717GB
2010-11-30T14:46:58-05:00 0:00.010 0.000u 6.6.6 Resource convert[8154]: resource.c/AcquireMagickResource/262/Resource
Memory: 13.38MB/12.76MiB/3.8588GiB
2010-11-30T14:46:58-05:00 0:00.010 0.000u 6.6.6 Cache convert[8154]: cache.c/OpenPixelCache/4056/Cache
open segfault.svg[0] (heap memory, 1538x2175 12.76MiBB)
2010-11-30T14:46:58-05:00 0:00.110 0.100u 6.6.6 Module convert[8154]: module.c/OpenModule/1262/Module
Searching for module "JPEG" using filename "jpeg.la"
2010-11-30T14:46:58-05:00 0:00.110 0.100u 6.6.6 Module convert[8154]: module.c/GetMagickModulePath/565/Module
Searching for coder module file "jpeg.la" ...
2010-11-30T14:46:58-05:00 0:00.110 0.100u 6.6.6 Module convert[8154]: module.c/OpenModule/1271/Module
Opening module at path "/usr/local/sites/imagemagick-666/lib/ImageMagick-6.6.6/modules-Q8/coders/jpeg.la"
2010-11-30T14:46:58-05:00 0:00.110 0.100u 6.6.6 Module convert[8154]: module.c/OpenModule/1298/Module
Method "RegisterJPEGImage" in module "JPEG" at address 0x2af2167d54a0
2010-11-30T14:46:58-05:00 0:00.110 0.100u 6.6.6 Module convert[8154]: module.c/OpenModule/1312/Module
Method "UnregisterJPEGImage" in module "JPEG" at address 0x2af2167d5470
2010-11-30T14:46:58-05:00 0:00.110 0.100u 6.6.6 Policy convert[8154]: policy.c/IsRightsAuthorized/485/Policy
Domain: Coder; rights=Write; pattern="JPG" ...
2010-11-30T14:46:58-05:00 0:00.110 0.100u 6.6.6 Policy convert[8154]: policy.c/IsRightsAuthorized/485/Policy
Domain: Path; rights=Write; pattern="segfaultsvg.jpg" ...
2010-11-30T14:46:58-05:00 0:00.120 0.110u 6.6.6 Coder convert[8154]: jpeg.c/WriteJPEGImage/1783/Coder
Image resolution: 72,72
2010-11-30T14:46:58-05:00 0:00.120 0.110u 6.6.6 Resource convert[8154]: resource.c/AcquireMagickResource/262/Resource
Memory: 3.345MB/15.95MiB/3.8588GiB
2010-11-30T14:46:58-05:00 0:00.120 0.110u 6.6.6 Resource convert[8154]: resource.c/RelinquishMagickResource/801/Resource
Memory: 3.345MB/12.76MiB/3.8588GiB
2010-11-30T14:46:58-05:00 0:00.120 0.110u 6.6.6 Coder convert[8154]: jpeg.c/WriteJPEGImage/1865/Coder
Interlace: non-progressive
2010-11-30T14:46:58-05:00 0:00.120 0.110u 6.6.6 Coder convert[8154]: jpeg.c/WriteJPEGImage/1923/Coder
Quality: 0
2010-11-30T14:46:58-05:00 0:00.120 0.110u 6.6.6 Coder convert[8154]: jpeg.c/WriteJPEGImage/2027/Coder
Storage class: DirectClass
2010-11-30T14:46:58-05:00 0:00.120 0.110u 6.6.6 Coder convert[8154]: jpeg.c/WriteJPEGImage/2029/Coder
Depth: 8
2010-11-30T14:46:58-05:00 0:00.120 0.110u 6.6.6 Coder convert[8154]: jpeg.c/WriteJPEGImage/2035/Coder
Number of colors: unspecified
2010-11-30T14:46:58-05:00 0:00.120 0.110u 6.6.6 Coder convert[8154]: jpeg.c/WriteJPEGImage/2037/Coder
JPEG data precision: 8
2010-11-30T14:46:58-05:00 0:00.120 0.110u 6.6.6 Coder convert[8154]: jpeg.c/WriteJPEGImage/2091/Coder
Image colorspace is RGB
2010-11-30T14:46:58-05:00 0:00.120 0.110u 6.6.6 Coder convert[8154]: jpeg.c/WriteJPEGImage/2093/Coder
Sampling factors: 1x1,1x1,1x1
2010-11-30T14:46:58-05:00 0:00.200 0.200u 6.6.6 Cache convert[8154]: cache.c/DestroyPixelCache/1507/Cache
destroy segfault.svg[0]
2010-11-30T14:46:58-05:00 0:00.210 0.200u 6.6.6 Resource convert[8154]: resource.c/RelinquishMagickResource/801/Resource
Memory: 13.38MB/0B/3.8588GiB
Segmentation fault
Code: Select all
/usr/local/sites/imagemagick-664/bin/convert -debug all segfault.svg jpg:segfaultsvg.jpg
2010-11-30T14:42:12-05:00 0:00.000 0.000u 6.6.4 Configure convert[8114]: utility.c/ExpandFilenames/906/Configure
Command line: /usr/local/sites/imagemagick-664/bin/convert {-debug} {all} {segfault.svg} {jpg:segfaultsvg.jpg}
2010-11-30T14:42:12-05:00 0:00.000 0.000u 6.6.4 Configure convert[8114]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/usr/local/sites/imagemagick-664/share/ImageMagick-6.6.4/config/coder.xml"
2010-11-30T14:42:12-05:00 0:00.000 0.000u 6.6.4 Configure convert[8114]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/usr/local/sites/imagemagick-664/lib/ImageMagick-6.6.4/config/coder.xml"
2010-11-30T14:42:12-05:00 0:00.000 0.000u 6.6.4 Configure convert[8114]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/usr/local/sites/imagemagick-664/share/doc/ImageMagick-6.6.4/coder.xml"
2010-11-30T14:42:12-05:00 0:00.000 0.000u 6.6.4 Configure convert[8114]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/usr/local/sites/imagemagick-664/share/ImageMagick-6.6.4/coder.xml"
2010-11-30T14:42:12-05:00 0:00.000 0.000u 6.6.4 Configure convert[8114]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/home/posterChild/.magick/coder.xml"
2010-11-30T14:42:12-05:00 0:00.000 0.000u 6.6.4 Configure convert[8114]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "coder.xml"
2010-11-30T14:42:12-05:00 0:00.000 0.000u 6.6.4 Configure convert[8114]: coder.c/LoadCoderList/690/Configure
Loading coder configuration file "/usr/local/sites/imagemagick-664/share/ImageMagick-6.6.4/config/coder.xml" ...
2010-11-30T14:42:12-05:00 0:00.000 0.000u 6.6.4 Module convert[8114]: module.c/OpenModule/1262/Module
Searching for module "SVG" using filename "svg.la"
2010-11-30T14:42:12-05:00 0:00.000 0.000u 6.6.4 Module convert[8114]: module.c/GetMagickModulePath/565/Module
Searching for coder module file "svg.la" ...
2010-11-30T14:42:12-05:00 0:00.000 0.000u 6.6.4 Module convert[8114]: module.c/OpenModule/1271/Module
Opening module at path "/usr/local/sites/imagemagick-664/lib/ImageMagick-6.6.4/modules-Q8/coders/svg.la"
2010-11-30T14:42:12-05:00 0:00.010 0.000u 6.6.4 Module convert[8114]: module.c/OpenModule/1298/Module
Method "RegisterSVGImage" in module "SVG" at address 0x2b6d2a40a200
2010-11-30T14:42:12-05:00 0:00.010 0.000u 6.6.4 Module convert[8114]: module.c/OpenModule/1312/Module
Method "UnregisterSVGImage" in module "SVG" at address 0x2b6d2a40a1c0
2010-11-30T14:42:12-05:00 0:00.020 0.000u 6.6.4 Policy convert[8114]: policy.c/IsRightsAuthorized/485/Policy
Domain: Path; rights=Read; pattern="segfault.svg" ...
2010-11-30T14:42:12-05:00 0:00.020 0.000u 6.6.4 Blob convert[8114]: blob.c/OpenBlob/2465/Blob
read 3 magic header bytes
2010-11-30T14:42:12-05:00 0:00.020 0.000u 6.6.4 Cache convert[8114]: cache.c/DestroyPixelCache/1505/Cache
destroy
2010-11-30T14:42:12-05:00 0:00.020 0.000u 6.6.4 Configure convert[8114]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/usr/local/sites/imagemagick-664/share/ImageMagick-6.6.4/config/magic.xml"
2010-11-30T14:42:12-05:00 0:00.020 0.000u 6.6.4 Configure convert[8114]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/usr/local/sites/imagemagick-664/lib/ImageMagick-6.6.4/config/magic.xml"
2010-11-30T14:42:12-05:00 0:00.020 0.000u 6.6.4 Configure convert[8114]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/usr/local/sites/imagemagick-664/share/doc/ImageMagick-6.6.4/magic.xml"
2010-11-30T14:42:12-05:00 0:00.020 0.000u 6.6.4 Configure convert[8114]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/usr/local/sites/imagemagick-664/share/ImageMagick-6.6.4/magic.xml"
2010-11-30T14:42:12-05:00 0:00.020 0.000u 6.6.4 Configure convert[8114]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "/home/posterChild/.magick/magic.xml"
2010-11-30T14:42:12-05:00 0:00.020 0.000u 6.6.4 Configure convert[8114]: configure.c/GetConfigureOptions/564/Configure
Searching for configure file: "magic.xml"
2010-11-30T14:42:12-05:00 0:00.020 0.000u 6.6.4 Configure convert[8114]: magic.c/LoadMagicList/677/Configure
Loading magic configure file "/usr/local/sites/imagemagick-664/share/ImageMagick-6.6.4/config/magic.xml" ...
2010-11-30T14:42:12-05:00 0:00.020 0.000u 6.6.4 Policy convert[8114]: policy.c/IsRightsAuthorized/485/Policy
Domain: Coder; rights=Read; pattern="SVG" ...
2010-11-30T14:42:12-05:00 0:00.020 0.000u 6.6.4 Policy convert[8114]: policy.c/IsRightsAuthorized/485/Policy
Domain: Path; rights=Read; pattern="segfault.svg" ...
2010-11-30T14:42:12-05:00 0:00.020 0.000u 6.6.4 Blob convert[8114]: blob.c/OpenBlob/2465/Blob
read 3 magic header bytes
2010-11-30T14:42:12-05:00 0:00.020 0.000u 6.6.4 Resource convert[8114]: resource.c/AcquireMagickResource/262/Resource
Area: 13.38MB/13.38MB/8.2867GB
2010-11-30T14:42:12-05:00 0:00.020 0.000u 6.6.4 Resource convert[8114]: resource.c/AcquireMagickResource/262/Resource
Memory: 13.38MB/12.76MiB/5.7882GiB
2010-11-30T14:42:12-05:00 0:00.020 0.000u 6.6.4 Cache convert[8114]: cache.c/OpenPixelCache/4054/Cache
open segfault.svg[0] (heap memory, 1538x2175 12.76MiB)
2010-11-30T14:42:12-05:00 0:00.120 0.100u 6.6.4 Module convert[8114]: module.c/OpenModule/1262/Module
Searching for module "JPEG" using filename "jpeg.la"
2010-11-30T14:42:12-05:00 0:00.120 0.100u 6.6.4 Module convert[8114]: module.c/GetMagickModulePath/565/Module
Searching for coder module file "jpeg.la" ...
2010-11-30T14:42:12-05:00 0:00.120 0.100u 6.6.4 Module convert[8114]: module.c/OpenModule/1271/Module
Opening module at path "/usr/local/sites/imagemagick-664/lib/ImageMagick-6.6.4/modules-Q8/coders/jpeg.la"
2010-11-30T14:42:12-05:00 0:00.120 0.100u 6.6.4 Module convert[8114]: module.c/OpenModule/1298/Module
Method "RegisterJPEGImage" in module "JPEG" at address 0x2b6d2b1884a0
2010-11-30T14:42:12-05:00 0:00.120 0.100u 6.6.4 Module convert[8114]: module.c/OpenModule/1312/Module
Method "UnregisterJPEGImage" in module "JPEG" at address 0x2b6d2b188470
2010-11-30T14:42:12-05:00 0:00.120 0.100u 6.6.4 Policy convert[8114]: policy.c/IsRightsAuthorized/485/Policy
Domain: Coder; rights=Write; pattern="JPG" ...
2010-11-30T14:42:12-05:00 0:00.120 0.100u 6.6.4 Policy convert[8114]: policy.c/IsRightsAuthorized/485/Policy
Domain: Path; rights=Write; pattern="segfaultsvg.jpg" ...
2010-11-30T14:42:12-05:00 0:00.130 0.110u 6.6.4 Coder convert[8114]: jpeg.c/WriteJPEGImage/1783/Coder
Image resolution: 72,72
2010-11-30T14:42:12-05:00 0:00.130 0.110u 6.6.4 Resource convert[8114]: resource.c/AcquireMagickResource/262/Resource
Memory: 3.345MB/15.95MiB/5.7882GiB
2010-11-30T14:42:12-05:00 0:00.130 0.110u 6.6.4 Resource convert[8114]: resource.c/RelinquishMagickResource/801/Resource
Memory: 3.345MB/12.76MiB/5.7882GiB
2010-11-30T14:42:12-05:00 0:00.130 0.110u 6.6.4 Coder convert[8114]: jpeg.c/WriteJPEGImage/1865/Coder
Interlace: non-progressive
2010-11-30T14:42:12-05:00 0:00.130 0.110u 6.6.4 Coder convert[8114]: jpeg.c/WriteJPEGImage/1923/Coder
Quality: 0
2010-11-30T14:42:12-05:00 0:00.130 0.110u 6.6.4 Coder convert[8114]: jpeg.c/WriteJPEGImage/2027/Coder
Storage class: DirectClass
2010-11-30T14:42:12-05:00 0:00.130 0.110u 6.6.4 Coder convert[8114]: jpeg.c/WriteJPEGImage/2029/Coder
Depth: 8
2010-11-30T14:42:12-05:00 0:00.130 0.110u 6.6.4 Coder convert[8114]: jpeg.c/WriteJPEGImage/2035/Coder
Number of colors: unspecified
2010-11-30T14:42:12-05:00 0:00.130 0.110u 6.6.4 Coder convert[8114]: jpeg.c/WriteJPEGImage/2037/Coder
JPEG data precision: 8
2010-11-30T14:42:12-05:00 0:00.130 0.110u 6.6.4 Coder convert[8114]: jpeg.c/WriteJPEGImage/2091/Coder
Image colorspace is RGB
2010-11-30T14:42:12-05:00 0:00.130 0.110u 6.6.4 Coder convert[8114]: jpeg.c/WriteJPEGImage/2093/Coder
Sampling factors: 1x1,1x1,1x1
2010-11-30T14:42:12-05:00 0:00.210 0.190u 6.6.4 Cache convert[8114]: cache.c/DestroyPixelCache/1505/Cache
destroy segfault.svg[0]
2010-11-30T14:42:12-05:00 0:00.210 0.190u 6.6.4 Resource convert[8114]: resource.c/RelinquishMagickResource/801/Resource
Memory: 13.38MB/0B/5.7882GiB
Segmentation fault
Any help or insight into what I can do or avoid doing to cause this segfault when writing to disk?
As always, thank you in advance for any help you guys can provide.
posterChild