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'的定义" 解决方案 oups,尝试一下我测试它的作用: using System; using M = MagickNet; using System.Drawing; namespace ConsoleApplication1 { class Program {
2 2024-04-25
编程技术问答社区
提取图片的一小部分,而不需要加载全部的图片
我有较大的JPG图像(例如20000x10000像素),并希望从这些图像中提取子图像而不加载整个图像. 我发现可以使用此ImageMagick命令: convert -extract 226x248+4216+3377 a.jpg o.jpg 但是我需要在我的C#WPF应用中将其放置. 有任何.net库吗?或至少可以复制的简单EXE,而无需在客户机器上安装ImageMagick之类的大液. 解决方案 magick.net确实支持了子图像的提取.您应该使用裁剪方法: using(MagickImage image = new MagickImage("a.jpg")) { image.Crop(new MagickGeometry(226,248,4216,3377)); image.Write("o,jpg"); } ImageMagick的 - 提取选项将在裁剪所需的零件之前读取整个JPG.因此,也许这不是解决您问题的解决方案.仅对于一小
12 2024-04-25
编程技术问答社区
试图在命令提示符下运行相同的命令,但没有效果
我正在制作一个程序,该程序可以在文件夹中找到安全的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
6 2024-04-22
编程技术问答社区
魔术图像在图像后面创造阴影
现在尝试使用以下代码来获得阴影: using (MagickImage image = new MagickImage(@"C:\Users\David\Pictures\YnTf9.png")) { MagickImage _shadow = new MagickImage(bitmap); using (IMagickImage backgroundImg = image.Clone()) { backgroundImg.Blur(0, 5); backgroundImg.Crop(400, 300, Gravity.Center); backgroundImg.RePage(); image.Resize(0, 300); _shadow.Resize(0, 300); _shadow.Shadow(10, 10, 0.8,
10 2024-04-21
编程技术问答社区
如何用c#读取EPS的属性或颜色信息?
我的要求是读取50个EPS文件并导出EPS的属性/颜色模式,这可能吗?颜色模式是灰度,RGB和CMYK.到目前为止,我尝试了Bitmapimage阅读EPS,但我没有运气.位映射没有读取EPS,因为它是向量格式(我在堆栈流中读取某个地方).有人可以帮助我读取EPS文件并显示图像的格式,即图像的颜色?我尝试了一些代码,请保持温柔,我是编程世界的初学者. c# string imageloc = @"D:\Image"; string[] files = Directory.GetFiles(imageloc); foreach (string file in files) { BitmapImage source = new BitmapImage(new System.Uri(file)); int bitsPerPixel = source.Format.BitsPerPixel; Console.Write("File Scanning-->
8 2024-04-21
编程技术问答社区
使用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()被称为: 时都会产生异常. Object reference not set to an instance of an object. at ImageMagick.ExifReader.GetBytes(UInt32 length) at ImageMagick.E
6 2024-04-20
编程技术问答社区
如何使用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 was unhandled by user code Message="External component has thrown an exception." Source="ImageMagickNET" ErrorCode=-2147467259 StackTrace: at Magick.Image.{ctor}(Image* , basic_
8 2024-04-19
编程技术问答社区
如何用Magick.Net调整jpeg质量
我试图将两个图像的图像质量互相设置为10%,并将图像大小调整为40x40. 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", "40x40"); ; sprite.Write(spriteFile); } 不幸的是,SetOption和Format呼叫似乎不会影响写入sprite.Write()的文件? 解决方案 方法SetOption与ImageMagick中的-def
12 2024-04-18
编程技术问答社区
使用C#查找图像中的表
我正在尝试编写一个可以拍摄图像的函数,并仅使用emgu.cv或magick.net或aforge.net返回一个图像列表 例如,对于下图,函数应在图像中的两个表中返回2个图像. private static List FindTables(Image img) { var masterImage = (Bitmap)img; var image = new Image(masterImage); var copyImg = new Image(masterImage); List tables = new List //Find all tables and add to tables variable return tables; } 解决方案 您可以使用ImageMagick中的连接组件来做到这一点.滤除所有小区域,即文本字符,仅留下较
6 2024-04-17
编程技术问答社区
我们能否以编程方式比较相同分辨率的不同图像?
是否有一种良好且可靠的方法比较相同格式和相同分辨率的图像并在它们之间获得差异? 在最佳情况下,我正在寻找一些可以比较的图像的数值表示,因为我必须比较许多图像. 解决方案 您可以使用ImageMagick的compare命令来执行此操作. (如果您成功使用了命令行,则可以继续使用ImageMagick的API之一:这些都可以用于C('magickwand' ),C++('magick ++'),Java('jmagick'),LISP('l-magick' ),.NET('magick.net'),Perl('perlmagick'),PHP('imagick' ),Python('Pythonmagick')和Ruby('rmagick')./sup> 唯一的要求是:图像需要在宽度和高度上具有相同的尺寸,以像素数量测量.因此,您甚至不需要相同的格式. 差异可以以不同的方式返回: 生成差异的A visual 表示,其中带有三角洲的像素以某种方式突出显示
10 2024-04-13
编程技术问答社区
当有3个选项时,如何确定文档的背景色,使用c#或imagemagick
我目前正在开发一个必须处理扫描表格的应用程序.我应用程序的任务之一是确定扫描哪种形式.有3种具有唯一背景颜色的表格类型可以识别每种形式.可能的3种颜色是红色/粉红色,绿色和蓝色.我遇到的问题是,我的尝试无法区分绿色和蓝色形式. 这是绿色和蓝色样本文件的链接: http://dl.dropbox.com/u/686228/image0037.jpg http://dl.dropbox.com/u/686228/image0038.jpg 我正在使用C#.NET应用程序和ImageMagick来完成我需要执行的某些任务. 目前,我正在获得扫描形式的颜色降低的直方图,并尝试确定哪些颜色为形式.但是我的应用不能依靠绿色和蓝色的应用. 任何建议或更智能的方法都将很高兴. 谢谢, erik 解决方案 我发现这个相当有趣,然后挖到了更深入的地方. 在如何计算位图的平均RGB颜色值存在一些无效的铸件和交换红色/蓝色通道等问题.这是一个固定版本:
4 2024-04-12
编程技术问答社区
如何在.net中使用imagemagick.net?
我正在寻找将近一个小时的示例在c#中使用imagemagick.net的示例,但我找不到Antything. 我所需要的所有内容是调整图像大小(.jpg)到新的尺寸图像(JPG),如果您知道如何添加水印,那将是很棒的. 我从 下载了ImageMagick.net http://imagemagick.codeplex.com/ 解决方案 您是否必须使用ImageMagick?如果您的目的是重新装饰其他尺寸的图像,则可以使用GDI+. 教程/csharp-tutorial-tutorial-tumage-higiting-saving-saving-sropping and resized 提供了此功能用于调整大小.我过去曾使用过本教程进行水印:private static Image resizeImage(Image imgToResize, Size size) { int sourceWidth = imgToResize.Width; int source
2 2024-04-11
编程技术问答社区
在imageMagick的Plane2Cylinder distort中,是否有一个选项可以使图像像下面一样?
当我使用plane2Cylinder失真时,我得到了如下图像.但是我想要像第二张图像一样效果.请浏览我的代码. local nelem = 1 -- number of args local arg = ffi.new("const double[?]", nelem, {100}) -- local methos = ffi.new("const int", 15) return handle_result(self, lib.MagickDistortImage(self.wand,13, nelem, arg, 1)) ffi.cdef([[ typedef void MagickWand; typedef void PixelWand; MagickBooleanType MagickDistortImage(MagickWand *wand, DistortMethod method, const size_t, const double *args, const M
2 2024-04-09
编程技术问答社区
在CMake中使用ImageMagick库的ImageWand组件
我正在编程. 这是我的cmakelist.txt文件: cmake_minimum_required(VERSION 3.3) project(WebServer) set(CMAKE_C_COMPILER "/usr/bin/gcc") set(SOURCE_FILES io.c server.c lock_fcntl.c sig_handler.c thread_job.c msg_parser.c) set(LIB http-parser-master/http_parser.c ) set(CMAKE_USE_PTHREADS_INIT true) set(CMAKE_USE_PTHREADS_INIT ON) find_package(Threads REQUIRED) find_package(ImageMagick COMPONENTS ImageWand) include_directories(header) include_directorie
4 2024-04-07
编程技术问答社区
用C语言读取和显示灰度图像。
我想在C中加载灰度尺度图像,对其进行处理,然后显示修改后的图像.我的问题是: 以C语言导入灰度图像(JPEG,PNG格式)的正确方法是什么? 在问这个问题之前,我自己的搜索. 1-壁板或使用文件管理,我们可以读取图像,但是数据将被加密(压缩),我想要每个像素的灰度尺度值(0-255). 2-有一个api imagemagick 有Mac OS X的安装问题 我已经在Python和Matlab中进行了图像处理,但对C语言一无所知. 谢谢 解决方案 此答案是一种尝试用Xcode的ImageMagick的Magickwand API开发的尝试,并基于Op. 的评论 安装ImageMagick后,启动一个新的Xcode命令行C项目.在编写任何代码之前,您需要告诉有很多方法可以实现这一目标,但这是我能想到的最快的. 导航到顶级项目的" 构建设置" 在" all"(不是"基本")下搜索" 其他链接标志" 在Xcode之外,打开terminal
16 2024-04-07
编程技术问答社区
在Mountain Lion上安装Rmagick时出错
我见过其他人安装Rmagick on Mountain Lion 但是,建议的解决方案都没有允许我成功安装Rmagick. 这是我收到的错误消息: Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension. checking for Ruby version >= 1.8.5... yes checking for /usr/local/bin/gcc-4.2... yes checking for Magick-config... yes checking for ImageMagick version >= 6.4.9... yes checking for HDRI disabled version of ImageMagick... yes checking for stdint.h... yes checking for sys/types.h... yes ch
10 2024-04-05
编程技术问答社区
使用VS2012的ImageMagick
首先感谢您阅读我的线程. 我试图将 ImageMagick 与 vs2012 上的 Windows 7 64位进行图像旋转.这是我所做的: 下载 imagemagick 用于Windows,并解开它. 转到\ ImageMagick-6.8.8 \ Visualmagick \ configure \文件夹,在VS2012中打开configure.dsw,然后构建它.这是成功的. 在\ ImageMagick -6.8.8 \ Visualmagick \ configure \中打开configure.exe,然后单击使用默认设置的" next" - >"完成". 步骤3之后,在\ ImageMagick-6.8.8 \ Visualmagick中生成了Visualdynamicmt.sln.我打开它,然后将其设置为x64版本,然后单击"重建". 一些项目成功地构建了,但许多项目失败了(总计30个项目,约2/3个项目失败了) ---------
18 2024-04-04
编程技术问答社区
向ImageMagick child_process传递2个stdin参数
我有一定的限制,我不会指定需要我将ImageMagick用作儿童过程. 我有多个基本64个JPG文件字符串,我希望ImageMagick处理. 具体来说,我希望ImageMagick将JPG文件连接在一起.如果我有2个常规JPG文件,则从命令行中使用以下格式. node convert in_1.jpg in_2.jpg +append out.jpg 在JS文件中,我将使用 var spawn, magicCommands, imagic; spawn = require('child_process').spawn; magicCommands = ["in_1.jpg", "in_2.jpg", "+append", "out.jpg"]; imagic = spawn("convert", magicCommands); 现在,如果我想使用 1 stdi
8 2024-04-04
编程技术问答社区
将图像转换为有索引的2位灰度BMP
首先,我的问题与我如何将图像转换为每个像素的2位?不幸的是,它的解决方案在我的情况下不起作用... 我需要将图像转换为每个像素灰度BMP格式的2位.示例图像具有以下属性: Color Model: RGB Depth: 4 Is Indexed: 1 Dimension: 800x600 Size: 240,070 bytes (4 bits per pixel but only last 2 bits are used to identify the gray scales as 0/1/2/3 in decimal or 0000/0001/0010/0011 in binary, plus 70 bytes BMP metadata or whatever) 样本BMP图像的开始部分的十六进制值: 3S代表图像开头的白色像素.在更远的地方,有几个0,1和2代表黑色,深灰色和浅灰色: 在下面的命令中, convert pic.png -colorspace
4 2024-04-01
编程技术问答社区
如何使用ImageMagick模糊/像素化图像的一部分?
我正在使用Perl和ImageMagick(Perl-Api). 在第一步中,我想采用图像的矩形,并模糊图像的这一部分.所需的结果是矩形混合的原始图像. 在第二步中,我需要模糊带有矩形的图像的一部分(即旋转35%). 我该如何实现? 解决方案 当您要求perlmagick时,我将剩下的几头发拔出来尝试在perl中进行此操作...文件1.png,2.png和3.png纯粹是用于调试的看看我在做什么. #!/usr/bin/perl use strict; use warnings; use Image::Magick; my $x; my $image; my $blurred; my $mask; # Create original fishscale image $image=Image::Magick->new(size=>'600x300'); $image->Read('pattern:fishscales'); $image->Write(filen
8 2024-04-01
编程技术问答社区