Commit graph

221 commits

Author SHA1 Message Date
Błażej Święcicki 07dd10f9cb Fix memory management in string_get! 2018-03-29 11:12:09 +02:00
Błażej Święcicki 7b4cca3956 MagickCropImage returns a result, and so should crop_image 2018-03-29 11:12:09 +02:00
Nathan Fiedler 2ba8a3d0d0
Merge pull request #35 from sindreij/fix-multi-page-pdf
Fix exporting pdf->jpeg for multi-page pdf
2018-03-28 08:55:51 -07:00
Sindre Ilebekk Johansen d5fe6f95cf Fix exporting pdf->jpeg for multi-page pdf
When trying to convert a multi-page pdf to jpeg i got a pdf file
instead of a jpeg file. I figured that the pdf that worked was
a one-page pdf and the pdf that did not work was a two-page pdf.

My theory was that the two pages was loaded as to images in the
wand and that the format was set on the first page and it exported
the second page. And since the second page had the old format, it
was exported as a pdf.

Resetting the page iterator before exporting the image fixed the
bug, and the multi-page pdf was exported as a jpeg. The image that
was exported was just the first page, but it works for my usage.
2018-03-27 15:47:54 +02:00
Nathan Fiedler a97c9a92bc Prepare for the 0.8.0 minor release 2018-02-16 09:54:20 -08:00
Nathan Fiedler 82dd58b726 Image colors value has some variability
cargo test passes
2018-02-16 09:51:20 -08:00
Nathan Fiedler cfc97f2caf
Merge pull request #34 from sindreij/add-crop-image
Add crop_image to MagickWand
2018-02-14 09:23:00 -08:00
Sindre Johansen f397e65634 Add crop_image to MagickWand 2018-02-14 12:44:00 +01:00
Nathan Fiedler 71b854de9d
Merge pull request #33 from little-bobby-tables/color-transformations
Add color-related getters and transforms
2018-01-03 10:38:30 -08:00
little-bobby-tables ddd33809e3 test new functionality 2018-01-03 17:05:22 +07:00
little-bobby-tables f2b153c987 add color-related getters and mutations 2018-01-03 17:04:45 +07:00
little-bobby-tables bc88fa81c2 lock ImageMagick to 7.0 in Dockerfile
Specifying a concrete version of IM required updating the Dockerfile
every time a new release is pushed, which happens pretty often.
2018-01-03 10:42:33 +07:00
Nathan Fiedler 1c89e0dc21 Prepare for the 0.7.1 patch release 2017-12-30 08:36:59 -08:00
Nathan Fiedler 7e33bda69f Update Dockerfile to rust 1.22, latest ImageMagick
Using latest bitflags crate requires a newer version of Rust.

cargo test passes
2017-12-22 20:12:58 -08:00
Nathan Fiedler 25547a9178
Merge pull request #32 from gentoo90/fix-build
Hide more types to fix build
2017-12-22 17:55:58 -08:00
gentoo90 9b780bc5f1 Hide more types to fix build (#29) 2017-12-22 21:49:32 +02:00
Nathan Fiedler 8f41f2ad49 Update to ImageMagick 7.0.7-14 for Docker build 2017-12-07 18:34:43 -08:00
Nathan Fiedler c8cff380fe Update to ImageMagick 7.0.7-13 for Docker build 2017-12-02 11:42:24 -08:00
Nathan Fiedler 3e178d1b8e Update ImageMagick version in Dockerfile 2017-11-26 19:48:21 -08:00
Nathan Fiedler c2e519f19f Some tidying up 2017-10-08 17:10:56 -07:00
Nathan Fiedler 88dcb28e40 Update ImageMagick version in Dockerfile 2017-10-08 17:10:36 -07:00
Nathan Fiedler 2e6d7faa41 Merge pull request #28 from gentoo90/windows
Parametrize build, add Windows support.
2017-10-08 15:37:56 -07:00
gentoo90 7a387cb675 Add info about env variables and building on Windows to README.md 2017-10-06 21:58:47 +03:00
gentoo90 66a2f0cef4 Parametrize build via environment variables
build.rs now recognizes next environment variables:
IMAGE_MAGICK_DIR - installation directory
IMAGE_MAGICK_LIB_DIRS - list of lib dirs split by ":"
IMAGE_MAGICK_INCLUDE_DIRS - list of include dirs split by ":"
IMAGE_MAGICK_LIBS - list of the libs to link to
IMAGE_MAGICK_STATIC - if set to value other than 0, link statically
2017-10-06 20:24:51 +03:00
Nathan Fiedler 06f1a4352a Merge branch 'magick-7' 2017-08-26 13:14:51 -07:00
Nathan Fiedler a758819cc9 Update changelog, readme, and crate version
cargo test passes
2017-08-26 13:14:12 -07:00
Nathan Fiedler a1f211ad1f Merge pull request #27 from little-bobby-tables/get-image-page
Add get_image_page to MagickWand
2017-08-23 08:42:05 -07:00
little-bobby-tables f6c55ba836 add get_image_page to MagickWand
get_image_page (MagickGetImagePage) is especially useful
for determining the overall dimensions of a GIF, which may have
frames with different widths and heights. In such cases,
get_image_width and get_image_height report the dimensions of
the last frame only.
2017-08-23 19:37:38 +07:00
Nathan Fiedler a1d50c2f01 Remove old cruft, document testing with Docker 2017-08-19 20:10:23 -07:00
Nathan Fiedler 2d63b00b1f Fix typo in doc comment 2017-08-19 17:45:06 -07:00
little-bobby-tables b748139e10 fix "libMagickWand-7.Q16HDRI.so.3: cannot open shared object file" 2017-08-19 16:41:08 +07:00
little-bobby-tables 7abde0e7c6 resolve initial compilation issues 2017-08-19 16:35:58 +07:00
little-bobby-tables e5a5472b1e update build.rs 2017-08-19 16:01:51 +07:00
little-bobby-tables 628ba81a4c add a development Dockerfile 2017-08-19 16:01:02 +07:00
Nathan Fiedler 14f78e3734 Fix pkg-config invocation in build.rs
It seems that pkg-config ignores the --max-version option when combined with
certain other options. As such, that check was not really working. Since the
pkg-config Rust crate always passes those certain other options, it is
necessary to invoke the pkg-config command directly from build.rs instead.

cargo test passes
2017-07-10 21:32:59 -07:00
Nathan Fiedler acabbafa08 Downgrade rust-bindgen to 0.25.5
There is an issue when building on Linux when using 0.26.0 or higher, so
keep to a version that still works on Mac and Linux.

cargo test passes
2017-07-08 21:30:42 -07:00
Nathan Fiedler 979cdd3269 Fix Ubuntu 16 test VM, rename directory
Also remove the FreeBSD VM definition, as it basically does not work in
VirtualBox and Vagrant, for whatever reason.
2017-07-08 21:29:04 -07:00
Nathan Fiedler 1436145cb5 Tag new release with small API addition
Also, update bindgen version and format some of the comments and
documentation.

cargo test passes
2017-07-07 20:38:01 -07:00
Nathan Fiedler cba0de65fa Merge pull request #25 from gentoo90/compare
Add `compare_images` method
2017-05-16 10:08:58 -07:00
gentoo90 c50b3e27de Add compare_images method 2017-05-16 16:43:08 +03:00
Nathan Fiedler 4a5b6935ed Merge pull request #24 from gadomski/split-pkg-config-version-flags
Split the pkg-config version and flags checks
2017-04-10 11:23:28 -07:00
Pete Gadomski d39972da88 Split the pkg-config version and flags checks
Apparently, on RHEL 6.7, pkg-config doesn't let you check versions and
output flags in the same command run.
2017-04-10 08:13:36 -06:00
Nathan Fiedler 00749a2d3d Forgot to set package version 2017-04-08 21:07:20 -07:00
Nathan Fiedler 034a7313bf Update CHANGELOG, add bindgen link to README 2017-04-08 20:58:20 -07:00
Nathan Fiedler e7054d3e35 Use the rust-bindgen crate properly
Using the changes from @gadomski along with some additional work, to get the
generated bindings working again. Works on macOS and FreeBSD 11. A couple of
hacks are needed for FreeBSD, but nothing too serious.

Changed to use the libc prefix, and changed to use the generated enums.

Fixes #22, #15, and #14

cargo test passes
2017-04-08 16:03:58 -07:00
Pete Gadomski 4507d07c9c Update to the bingen crate 2017-04-07 06:24:00 -06:00
Nathan Fiedler d86bf69079 Strike out bindgen in README file 2017-04-06 20:02:54 -07:00
Nathan Fiedler b22e97c908 Hack the MagickWand bindings
Using rust-bindgen to generate the bindings for the MagickWand library is
extremely difficult with the new versions of rust-bindgen. The old versions
of the generated bindings will be used for now, and nothing will be
generated at build time.

cargo test passes
2017-04-06 19:58:58 -07:00
Nathan Fiedler f4843c246c Test with some flexibility in image size
The size of the image can vary from version to version (of ImageMagick) and
platform to platform (i.e. MacOS and FreeBSD). As such, allow for a degree
of variability in the resulting image size.

cargo test passes
2017-01-22 14:13:05 -08:00
Nathan Fiedler 6ade7438d9 Additional Homebrew link command is needed 2017-01-21 15:30:37 -08:00