Tag: imagemagick

尝试在命令提示符下运行相同的命令不起作用

我正在制作一个程序,在文件夹中搜索安全的PDF并使用ImageMagick将它们转换为PNG文件。 以下是我的代码。 string WorkDir = @”C:\Users\rwong\Desktop\TestFiles”; Directory.SetCurrentDirectory(WorkDir); String[] SubWorkDir = Directory.GetDirectories(WorkDir); foreach (string subdir in SubWorkDir) { string[] filelist = Directory.GetFiles(subdir); for(int f = 0; f < filelist.Length; f++) { if (filelist[f].ToLower().EndsWith(".pdf") || filelist[f].EndsWith(".PDF")) { PDFReader reader = new Pdfreader(filelist[f]); bool PDFCheck = reader.IsOpenedWithFullPermissions; reader.CLose(); if(PDFCheck) { //do nothing } else { string PNGPath = […]

从.NET中的COM对象包装器重定向STDERR输出

我正在尝试在.NET库中使用ImageMagick COM对象(ImageMagickObject)。 这个库旨在从IronRuby中调用,但这并不是那么重要。 我想采用这种方法,因为它适合我现有的调用,当前调用ImageMagick二进制文件作为外部进程。 COM对象将采用与二进制文件相同的参数,但将保存进程创建速度,整体速度提高约5倍。 我唯一的障碍是COM对象的“Compare”方法将其结果返回给STDERR。 这也是二进制文件的一个问题,但很容易将其传回STDOUT,我期待它。 使用COM对象,我从函数返回值中获取结果。 如何将结果从“比较”重定向到字符串缓冲区甚至文件而不是STDERR? 我尝试了以下操作,它确实阻止输出到达STDERR,但它没有按预期写入文件: using ImageMagickObject; … public class ImageMagickCOM { [DllImport(“Kernel32.dll”, SetLastError = true)] public static extern int SetStdHandle(int device, IntPtr handle); private const int STDOUT_HANDLE = -11; private const int STDERR_HANDLE = -12; private ImageMagickObject.MagickImage magickImage = null; private FileStream filestream = null; private StreamWriter streamwriter = […]

ImageMagick.net问题

我正在使用ImageMagick.net,我已将ImageMagickNET.dl引用添加到我的项目中。 这是我正在使用的代码。 MagickNet.Magick.Init(); MagicNet.Image img = new MagicNet.Image(“file.jpg”); img.Resize(System.Drawing.Size(100,100)); img.Write(“newFile.png”); MagickNet.Magick.Term(); 但我得到这个错误“’ImageMagickNET.MagickNet’不包含’Magick’的定义”

如何使用Magick.Net调整jpeg质量

我试图将两个图像的图像质量设置为10%,并将图像大小调整为40×40。 using (var images = new MagickImageCollection {designFile, swatchFile}) { MagickImage sprite = images.AppendHorizontally(); sprite.Format = MagickFormat.Jpeg; sprite.SetOption(MagickFormat.Jpeg, “quality”, “10%”); sprite.SetOption(MagickFormat.Jpeg, “size”, “40×40”); ; sprite.Write(spriteFile); } 不幸的是, SetOption和Format调用似乎没有影响写入sprite.Write()的文件?

如何使用C#和ImageMagick将PDF转换为图像?

我想使用C#和magicknet.dll将PDF文件转换为.GIF。 我已将MagickNet Dll的引用添加到我的项目中。 MagickNet.Magick.Init(); MagickNet.Image img = new MagickNet.Image(“d:/aa.pdf”); img.Write(“d:/bb.gif”); MagickNet.Magick.Term(); img.Dispose(); 用户代码未处理System.Runtime.InteropServices.SEHException Message =“外部组件抛出exception。” 来源= “ImageMagickNET” 错误码= -2147467259 堆栈跟踪: 在Magick.Image。{ctor}(Image *,basic_string \,std :: allocator> *) 在ImageMagickNET.Image..ctor(String imageSpec) 在Test1._Default.Button1_Click(Object sender,EventArgs e)中的C:\ Users \ PANKAJ \ Documents \ Visual Studio 2008 \ Projects \ Test1 \ Test1 \ Default.aspx.cs:第31行 在System.Web.UI.WebControls.Button.OnClick(EventArgs e) 在System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) 在System.Web.UI.WebControls.Button.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) 在System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler […]

使用Magick.NET创建/写入EXIF数据

在C#中使用基于ImageMagick的库Magick.NET将EXIF元数据添加到当前没有EXIF配置文件的已处理JPEG中。 尝试创建配置文件都失败了: var newExifProfile = image.GetExifProfile(); if (newExifProfile == null) { newExifProfile = new ExifProfile(); } newExifProfile.SetValue(ExifTag.Copyright, “test”); ExifProfile有其他构造函数接受一个流或字节数组,不提供一个在.SetValue()时创建一个exception: Object reference not set to an instance of an object. at ImageMagick.ExifReader.GetBytes(UInt32 length) at ImageMagick.ExifReader.Read(Byte[] data) at ImageMagick.ExifProfile.SetValue(ExifTag tag, Object value) 如何使用Magick.NET编写EXIF数据?

在C#中将.EPS转换为图像

我如何将一个eps文件转换为C#中的System.Drawing.Image我尝试使用ImageMagickNET但是没有用-.-

ImageMagick.NETexception

我在尝试使用ImageMagick.NET时收到FileNotFoundException ,取自源代码中的“bin”文件夹.http://imagemagick.codeplex.com/releases/view/30302 我得到的确切例外是…… “无法加载文件或程序集’ImageMagickNET.dll’或其依赖项之一。找不到指定的模块。” ImageMagickNET.dll位于我的输出文件夹中,那么还需要哪些其他依赖项呢?

如何在C#中使用imageMagick

你能解释一下我如何在C#中使用ImageMagick吗? 我正在尝试将PDF转换为页面到图像。 我想运行imageMagick命令“convert -density 300 $ input.pdf $ output.png”

无法加载文件或程序集“Magick.NET-x86.DLL”或其依赖项之一

我使用了Magick.NET,它是ImageMagick的.NET包装器,它会在客户端计算机上抛出上述错误。 它在我的机器上工作正常。 我没有安装ImageMagick所以我根本无法理解我在客户机上需要做什么。 我安装了VS 2012。 此外,Magick.NET包含ImageMagick,我认为它使用C ++ / CLI并将.NET接口暴露给本机ImageMagick,所有这些都在一个DLL中。 那么它需要什么DLL呢? (我刚刚发现了这个错误,所以发布了我找到的解决方案。)