维基副本镜像

这是 pascal.chat 维基的镜像。编辑、历史记录和登录都在那里。

PascalMagick/zh CN

Bahasa Indonesia · English · Español · Français · Português · Русский · 中文(中国) · 日本語

关于

关于 ImageMagick

ImageMagick套件是一款免费的软件,用来开发、创建、编辑和组合位图图像。它支持大量不同格式的图像(超过90种),包括格式如GIF、JPEG、PNG、JPEG2000 、PDF、PhotoCD、TIFF、DPX。图像可以剪裁、颜色改变,可以使用各种效果,图像可以旋转,组合文本、线、多边形、椭圆和贝塞尔曲线,可以添加图片,拉伸或旋转。

查看维基百科上的ImageMagick。

该套件运行在所有主流操作系统上,也可在命令行中使用,它的命令行工具也是Linux标准套件之一,在多个发行版中。

特性和功能:

ImageMagick 书籍

ImageMagick 技巧 这种快节奏的实用教程中包含了大量照片处理的例子,创建LOGO、动画及完整的WEB项目。有了这本袖珍书,你会在任何时间创建出引人入胜的图像。

关于 MagickWand

MagickWand API 是ImageMagick 团队推荐的接口,它是一个易于使用的编程接口。

关于 MagickCore

该MagickCore API是​​ImageMagick的一个低级别接口。

关于 PascalMagick

This port is a translation of the c header files for both MagickWand and Magick Core. 此端口是C头文件的MagickWand 和Magick 核心翻译。

屏幕截图

作者

Felipe Monteiro de Carvalho

Ángel Eduardo García

许可证

BSD-style and compatible with the GPL.

你可以 阅读授权.

下载

Note: PascalMagick已经包含在所有最近的FPC版本中,你不需要下载它。

旧的版本

PascalMagick 0.4 可以在这里找到: http://sourceforge.net/project/showfiles.php?group_id=92177&package_id=174103&release_id=431432

对于旧版本的FPC,以使用下面的命令下载项目:

bash
<b>????????????</b>
svn checkout http://svn.freepascal.org/svn/fpc/trunk/packages/base/imagemagick imagemagick

状态

PascalMagick 的当前版本可以工作在Windows和Linux上。

安装

PascalMagick 的当前版本可以工作在Windows和Linux上,Mac OS X上测试是有必要的。

首先,从官方网站下载并安装ImageMagick:http://www.imagemagick.org/script/binary-releases.php

现在下载并解压PascalMagick 包(按下载页面说明操作)

要检查一切正常, 打开 PascalMagick/wand/wanddemo.lpi 项目。Now go to the Project --> "Compiler Options dialog" and change the "Other Units" field to point to "../magick", 因此你可以找到 PascalMagick/magick/ImageMagick.pas 文件,在这之后,你可以编译并运行测试程序。

如果程序正常运行,它会加载目录下的image.png文件,调整大小并转换为image.jpg。

一个额外的步骤:在Linux中,你需要重命名image.PNG 为 image.png,由于大小写问题。

Linux下你必须修改 PascalMagick/magick/ImageMagick.pas文件
WandExport = 'libWand'; 为 WandExport = 'libMagickWand';
但主记住,PascalMagick 已经安装在最新版本的FPC。

演示程序1

pascal
{
  ImageMagick库演示程序
  
  这个项目由 Felipe Monteiro de Carvalho 从C转换过来

  使用方法:只需要执行程序,它会自动调整目录下的image.png图像,以缩放(106,80),并将其转换为JPG格式。
  
  Dez/2005
}
{Version 0.1}
program wanddemo;

{$mode objfpc}{$H+}

uses 
  SysUtils, magick_wand, ImageMagick;

procedure ThrowWandException(wand: PMagickWand);
var
  description: PChar;
  severity: ExceptionType;
begin
  description := MagickGetException(wand, @severity);
  WriteLn(Format('An error ocurred. Description: %s', [description]));
  description := MagickRelinquishMemory(description);
  Abort;
end;

var
  status: MagickBooleanType;
  wand: PMagickWand;
begin
  { Read an image. }
  
  MagickWandGenesis;

  wand := NewMagickWand;
  
  try
    status := MagickReadImage(wand, 'image.png');
    if (status = MagickFalse) then ThrowWandException(wand);

    { Turn the images into a thumbnail sequence. }

    MagickResetIterator(wand);

    while (MagickNextImage(wand) <> MagickFalse) do
     MagickResizeImage(wand, 106, 80, LanczosFilter, 1.0);

    { Write the image as MIFF and destroy it. }
  
    status := MagickWriteImages(wand, 'image.jpg', MagickTrue);
    if (status = MagickFalse) then ThrowWandException(wand);

  finally
    wand := DestroyMagickWand(wand);

    MagickWandTerminus;
  end;
end.

加载图像到Lazarus中的TBitmap 和 ImageMagick

http://lazarus.freepascal.org/index.php/topic,20016.msg114885.html#msg114885

BUG报告/功能要求

测试是必要的,以难所有版本ImageMagick工作良好。

请发送问题报告/功能在相应讨论页。

变更记录

  1. 添加magick_image.inc上缺少的4个功能到 fpc 版本库
  1. 最后的bug修复
  1. 一些小的修正
  1. 基于ImageMagic6.2
  2. MagickWand API完全翻译
  3. 添加第二个演示程序
  1. 约80%的magickwand API被翻译
  2. 基本的演示程序运行良好
  3. 只有MagickCode 标题被翻译

帮助

如需帮助请到Lazarus论坛或至电Lazarus列表。


From the Free Pascal wiki, page "PascalMagick/zh CN", as it stood on 2020-02-23 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.

版本1,最后由WikiArchive于修改。